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

botones con movimiento que mueven otro clip

Estas en el tema de botones con movimiento que mueven otro clip en el foro de Flash y Actionscript en Foros del Web. Botones con movimiento que mueven otro clip, bueno dicho así suena algo difícil, pero les explico lo que quiero. Tengo unos thumbnails, que los e ...
  #1 (permalink)  
Antiguo 20/10/2003, 18:55
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
Pregunta botones con movimiento que mueven otro clip

Botones con movimiento que mueven otro clip, bueno dicho así suena algo difícil, pero les explico lo que quiero.

Tengo unos thumbnails, que los e convertido en botones, estos botones los he metido cada uno dentro de un MC y a este MC le e dado este AS:

Código:
onClipEvent(enterFrame) {
	speed = 4;
	this._x += speed;
}
Bien con esto he conseguido que las miniaturas (botones) se muevan de izquierda a derecha

querría que cuando llegaran al final de la película y salieran por la derecha, volvieran a aparecer por la izquierda (cuando le tocara, ya que algunas fotografías empiezan con un valor x negativo) es decir imagínense que se visualizan 5 fotos pero hay 8, la primera sale ya por la izquierda, sigue el movimiento del resto de fotos, y cuando la 8 ya ha aparecido, la siguiente foto, vuelve a ser la primera) ¿Como lo haría?

querría que cuando se situaran encima de la miniatura (botón) se detuviera el movimiento, hasta que quiten el ratón de encima. ¿Cual seria el código, y donde lo situaría?

3 Cuando pinchen sobre las miniaturas, quiero que aparezca la foto a tamaño real, que me recomendarían? que se abriera un pop-up? o que se deslizara de abajo, emergiendo dentro de un cuadrado, con un botón que al pinchar se volviera a deslizar hacia abajo?

Muchas gracias, cuando termine esto, lo puedo subir si les interesa a los fla, de aquí para que tengan un menú similar al que quiero realizar.
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!
  #2 (permalink)  
Antiguo 20/10/2003, 22:33
Avatar de juwe  
Fecha de Ingreso: abril-2001
Ubicación: Guadalupe Inn
Mensajes: 622
Antigüedad: 23 años, 7 meses
Puntos: 0
1. tienes que definir el ancho de tu animación en una variable, supongamos que la medida de tu escenario es de 500 pixeles, entonces:
Código:
ancho_escenario = 500
Y a cada movie clip, le agregas además de lo que tienes:
Código:
onClipEvent(enterFrame) {
	speed = 4;
	this._x += speed;
	if (this._x > escenario + this._xscale) {
		this._x = 0 - this._xscale;
	}
}
Con esto le decimos que cuando este más allá del fin del escenario y salga completamente, vuelva al principio, si te das cuenta le he agregado el this._xscale para que no se corte y parezca que se corta o desaparece el mc.

2. En el botón que esta dentro del mc pones este código:
Código:
on (rollOver) {
	tellTarget ("/instancia_del_mc") {
		speed = 0;
	}
}
on (rollOut) {
	tellTarget ("/instancia_del_mc") {
		speed = 4; // O la velocidad que tenga ese mc
	}
}
Donde instancia_del_mc es la instancia del mc donde esta contenido el botón.
3. Puedes hacerlo con loadMovie, creas una mc vacía y le pones como instancia contenedor_mc y a cada botón le pones:
Código:
on (release) {
	tellTarget ("/") {
		loadMovie ("tu_swf.swf", "/contenedor_mc")
	}
}
PD este código funciona a partir de Flash 5, sin embargo a partir del MX se puede simplificar, avísame con que versión estas trabajando y si es necesario la cambiamos. Si tienes algún problema con el código, avísame y lo checamos.
Saludos.
__________________
blog.juwestudio
  #3 (permalink)  
Antiguo 21/10/2003, 05:34
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
Muchisimas gracias, me ha funcionado todo a la perfección, menos una cosa yo le e puesto al ancho_escenario = 750, pero el recorrido que hacen las fotos no es ni de 150, y no se porqué, lo demás lo tengo todo exactamente = que lo has puesto.

PD: tengo el flash MX, y de nuevo muchas gracias
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!
  #4 (permalink)  
Antiguo 21/10/2003, 05:43
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
pues me acabo de dar cuenta que si te situas encima de alguna de las fotos no se para el movimiento.
yo tengo en el frame 1 esto:

Código:
ancho_escenario = 735
luego en ese mismo frame tenfo el mc, llamado raulc, y con nombre de instancia rauli, este mc tiene el siguiente código:

Código:
onClipEvent(enterFrame) {
	speed = 4;
	this._x += speed;
	if (this._x > escenario + this._xscale) {
		this._x = 0 - this._xscale;
	}
}
y en el mismo frame tengo el mc vacio y con nombre de instancia contenedor_mc.

el mc raulc contiene un boton con las siguientes acciones:

Código:
on (rollOver) {
	tellTarget ("/rauli") {
		speed = 0;
	}
}
on (rollOut) {
	tellTarget ("/rauli") {
		speed = 4; // O la velocidad que tenga ese mc
	}
}

on (release) {
	tellTarget ("/") {
		loadMovie ("cabecera.swf", "/contenedor_mc")
	}
}
que tengo mal? como ya te he dicho antes que tengo el flash mx.

Muchas gracias
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!

Última edición por xema; 21/10/2003 a las 05:48
  #5 (permalink)  
Antiguo 21/10/2003, 12:24
Avatar de juwe  
Fecha de Ingreso: abril-2001
Ubicación: Guadalupe Inn
Mensajes: 622
Antigüedad: 23 años, 7 meses
Puntos: 0
Ok según yo estaba bien pero lo he probado y me pasó lo mismo que me cuentas, ya lo he corregido:
Primer fotograma
Código:
ancho_escenario = 550
velocidad_uno = 4
//velocidad_uno será la variable de movimiento del primer
//botón, deberás crear una nueva velocidad para cada botón.
en el mc:
Código:
onClipEvent(enterFrame) {
	this._x += _root.velocidad_uno;
	if (this._x >= _root.ancho_escenario + this._xscale) {
		this._x = 0 - this._xscale;
	}
}
Y en el botón:
Código:
on (rollOver) {
	tellTarget ("/rauli") {
		_root.velocidad_uno = 0;
	}
}
on (rollOut) {
	tellTarget ("/rauli") {
		_root.velocidad_uno = 4;
	}
}
on (release) {
	tellTarget ("/") {
		loadMovie ("cabecera.swf", "/contenedor_mc")
	}
}
El problema estaba en que la variable speed estaba adentro del mc y aunque si cambiaba, no me explico porque no hacia el cálculo en el enterframe, lo que hice fue ponerla en el primer fotograma como global y con el _root, traersela. El código se puede simplificar un poco, pero creo que así esta bien para que los players de f5 puedan verlo.
No probé el loadMovie por falta de tiempo, pero supongo que si jala, si no pues avísame.

Saludos.
__________________
blog.juwestudio
  #6 (permalink)  
Antiguo 21/10/2003, 16:20
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
funciona todo a la perfección, el único problema es que cuando me situo encima de una foto solo se para esa imagen, y las demás siguen moviendose, asi que se va juntando y demás y crea mucha confusión, como ut me has dicho funciona y a la perfección, y te lo agradezco muchisimo, pero no se podria hacer que se pararan todas?
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!
  #7 (permalink)  
Antiguo 21/10/2003, 18:07
Avatar de juwe  
Fecha de Ingreso: abril-2001
Ubicación: Guadalupe Inn
Mensajes: 622
Antigüedad: 23 años, 7 meses
Puntos: 0
Lo que puedes hacer es que la variable velocidad_uno sea la que usen todos los mc's y al convertirse en cero, se detendrán todos.
aunque si la velocidad es diferente habrá que trabajarlo un poco más, es sencillo sólo cosa de sumarle algún número a cada incremento, ahorita voy de salida de la oficina, pero de aquí a mañana lo pienso y lo posteo.

Saludos.
__________________
blog.juwestudio
  #8 (permalink)  
Antiguo 21/10/2003, 18:08
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
ok, trankilo cuando puedas, la velocidad va a ser la misma para todas
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!
  #9 (permalink)  
Antiguo 21/10/2003, 18:20
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
e comprobado otra cosa, que al exportarlo como swf, y cargarlo en otra película, vuelve a pasar el error del principio, que no llega hasta el final, y no se activa el movimiento hasta pasar por primera vez por cada foto
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!
  #10 (permalink)  
Antiguo 22/10/2003, 04:12
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
maltos donde debo de poner eso? y tengo que quitar algo del otro código? ya que sustituí tu código por el del mc pero me puso esto:

Código:
Escena=Escena 1, Capa=Capa 1, Fotograma=1: Línea 7: La declaración debe aparecer dentro del controlador on/onClipEvent
     clip_mc.onEnterFrame = function(){
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!
  #11 (permalink)  
Antiguo 23/10/2003, 17:24
Avatar de juwe  
Fecha de Ingreso: abril-2001
Ubicación: Guadalupe Inn
Mensajes: 622
Antigüedad: 23 años, 7 meses
Puntos: 0
Antes de todo una disculpa xema por no responderte antes, perode que se junta la chamba pues no queda mucho tiempo libre.
Para solucionar el problema que te pasa cuando lo cargas debes cambiar todos los _root del código por _parent
Y si los cuadros tienen la misma velocidad, simplemente usa la misma variable de velocidad para todas las mc.

Creo que estoy bien, tiene rato que no agarro el flash. =(

Saludos.
__________________
blog.juwestudio
  #12 (permalink)  
Antiguo 23/10/2003, 17:33
 
Fecha de Ingreso: febrero-2002
Ubicación: Valencia - España
Mensajes: 488
Antigüedad: 22 años, 9 meses
Puntos: 0
voy a probarlo, gracias juwe
__________________
webmaster de xematuning el mejor tuning español con más de 25000 fotos sobre el mundo del tuning, videos, salvapantallas, fondos y mucho más no lo dudes más y visítala!!!
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 16:56.