hola todos este es mi primer post y espero que me puedan ayudar...espero tambien poder explicarme......bueno este es el asusnto estoy haciendo una pagina web full flash el menu de esta pagina tiene una animacion en el timeline y le he puesto un actionscript de Mous_over y Mouse_out para que le de play y pare....el menu lo q hace es que se la pasa girando y cuando estas arriba de el boton pare y asi es la animacion ....bueno este menu consta de varios botones y bueno yo converti todos estos botones en un MovieClip...el asunto es q cada boton despliega un submenu y como los tengo q crear adentro del MovieClip del menu para que esten al mismo level que el boton.....el submenu tambien rota y no quiero que haga esto.....bueno espero que se entienda mi problema .....espero me puedan ayudar ....ah y estoy usando As3 para programar la pagina .....Gracias de antemano
bueno parece q no se entiendo mu pregunta ....asi q la cambiar bueno tambien q tambien cambie la programacion de la animacion.....en vez de usar una animacion para que el menu de vueltas lo hice con un script,,,ahora a ver si me puedo explicar un poco mejor.....el menu esta compuesto de 6 botones.....estos son 6 botones independientes....para poder hacer giraran los seleccione todos y los converti en un moviClip para poder darle el action.....ahora ya todos dan vueltas ...mi problema es q para darle una accion de boton a estos por ejemplo que cuando le de click a uno se despliegue otro sub menu lo tengo q hacer adentro del movieclip q esta girando y si andetro creo el submenu da vueltas como el menu ....y todo lo q creo dentro queda influenciado por el action rotation ....hay algun action q le pueda poner a estos para q no se muevan ....gracias
Hola, si pones un movieclip "x1" dentro de otro "x2", entonces lo que hagas de manera externa al movieclip x2 afectara a todo lo que este dentro, me refiero a la mayoria de propiedades, como rotacion y posición, lo que podrias hacer es no ponerlos dentro, pero no puedo explicarte con código porque no se cómo sea la animación que quieres, escribe el código que has hecho para poder ayudarte. Hasta Luego!
ok bueno este es el codigo que le puse al menu para que rotara
allMenu_mc.addEventListener(Event.ENTER_FRAME, rotateMoveClip); function rotateMoveClip(e:Event) { e.target.rotation +=0.7; }
el menu es enforma de una flor para decir algo ....ponte q cada petalo es un boton y el esta dando vueltas constantemente .....ahora mi problema es cuando le quiero dar acciones a cada boton(petalos)....porque como converti todo el conjunto de botones(petalos) en un movieClip como ya me dijiste reaccionan a este codigo y todo lo q hago dentro de este gira y yo no quiero eso ......Gracias por responderme
ok, entonces has que allMenu_mc sólo rote cuando tu quieras, para eso puedes quitar y agregar el listener de de rotateMoveClip según los eventos del mouse sobre los botones:
Código ActionScript :
allMenu_mc.btn1.addEventListener(MouseEvent.MOUSE_OVER, stopRotatingMovieClip);
allMenu_mc.btn1.addEventListener(MouseEvent.MOUSE_OUT, startRotatingMovieClip);
allMenu_mc.addEventListener(Event.ENTER_FRAME, rotateMoveClip);
function rotateMoveClip(e:Event) {
e.target.rotation+=0.7;
}
function stopRotatingMovieClip(e:MouseEvent) {
allMenu_mc.removeEventListener(Event.ENTER_FRAME, rotateMoveClip);
}
function startRotatingMovieClip(e:MouseEvent) {
allMenu_mc.addEventListener(Event.ENTER_FRAME, rotateMoveClip);
}
así puedes agregarle eventos del mouse a los botones que estan adentro de allMenu_mc, y todo dejara de rotar cuando pases el mouse por encima, si lo que quieres es que los botones no giren ni nada entonces haslos por fuera de allMenu_mc y les agregas los listeners independientemente, así sólo girara allMenu_mc y los botones estaran quietos, espero haber respondido tu pregunta bien, creo que si te entendi , espero te sirva Hasta Luego!
graciassss.....pero no se si te comprendi o no ....pero me resolviste una pregunta q iba a salir despues jijijijijiijii .....pero sigue el problemilla ....ponte cuando le doy click a un boton se despliega un submenu el problema de esto es q cuando sale el submenu queda dando vueltas como el movieClip allMenu_mc.......y cada elemento q este dentro de allMenu_mc (este es el movieClip donde estan tdos los botones(petalos)) .......bueno no se si comprendi lo q me dijiste ...muchas gracias por responderme ....
jaja, mira el código que te escribi, hace que deje de rotar allMenu_mc cuando pasas el mouse sobre un botón dentro de allMenu_mc que se llama btn1, asi que puedes poner
Código ActionScript :
allMenu_mc.btn1.addEventListener(MouseEvent.MOUSE_OVER, stopRotatingMovieClip);
allMenu_mc.btn2.addEventListener(MouseEvent.MOUSE_OVER, stopRotatingMovieClip);
allMenu_mc.btn3.addEventListener(MouseEvent.MOUSE_OVER, stopRotatingMovieClip);
//y asi sucesivamente, o poner el listener el allMenu_mc mismo:
allMenu_mc.addEventListener(MouseEvent.MOUSE_OVER, stopRotatingMovieClip);
asi dejara de rotar cuando pongas el mouse sobre el, y todo lo que esta dentro de allMenu_mc dejara de rotar
"ponte cuando le doy click a un boton se despliega un submenu el problema de esto es q cuando sale el submenu queda dando vueltas como el movieClip allMenu_mc" pues como al pasar el mouse sobre cualquier boton dejara de rotar entonces el problema deberia haberse solucionado , vuelve a escribir si no solucione nada jaja, lo siento, espero te sirva! Hasta Luego!
y cuando el mouse no este sobre el boton esto activara de nuevo la rotacion no ??....entonces se ira el submenu .....cuando le doy click al boton aparece el submenu .....y esta todo bien por q esta estatico pero cuando ya no estoy sobre allMenu_mc se activa la rotacion y el submenu empieza la rotacion....... creo q todivia estamos en los mismo jijiijijiijijiij si estoy mal corrigeme porfavor .....onda y gracias por la ayuda de verdad ....
entonces agrega el listener de detener rotacion a allMenu_mc, en vez de agregarlo a los botones, de esa manera cuando pases el mouse sobre cualquier parte interna de allMenu_mc dejara de rotar:
Código ActionScript :
function rotateMoveClip(e:Event) {
e.target.rotation+=0.7;
}
function stopRotatingMovieClip(e:MouseEvent) {
allMenu_mc.removeEventListener(Event.ENTER_FRAME, rotateMoveClip);
}
function startRotatingMovieClip(e:MouseEvent) {
allMenu_mc.addEventListener(Event.ENTER_FRAME, rotateMoveClip);
}
allMenu_mc.addEventListener(MouseEvent.MOUSE_OVER, stopRotatingMovieClip);
allMenu_mc.addEventListener(MouseEvent.MOUSE_OUT, startRotatingMovieClip);
espero te sirva, de cualquier manera si seguimos con el problema escribe Hasta Luego!
hola....todavia seguirmos con el mismo problema jijiijijij.....el asuno es q ok si deja de rota pero cuado aparece algo como el submenu y ya no estoy sobre allMenu_mc vuelve a rotar...y eso esta bien solo q el submenu q esta alli tambien lo hace......ahora podria darle la rotacion a cada boton independiente y rogar q no se descuadre jijjijijijiij pero entonces alli entrara otro problema ....como manipulo el registration point de cada movieclip para q todos giren desde un mismo pivot .....bueno gracias por la ayuda ...
jaja, ok, no se como esta organizado, pero según pense, los submenus tambien estaban dentro de allMenu_mc, por eso te dije que le agregaras el listener de dejar de rotar, de manera que quieres que al pasar el mouse sobre los submenus deje de rotar todo, entonces agrega listeners a los submenus tambien a la funcion stopRotatingMovieClip, posdata: como estoy totalmente seguro de que esto no solucionara el problema, porfavor sube algunas imagenes de cómo estan organizados los movieclips de submenus, botones y allMenu_mc, y su organizacion en cuanto a parents y childrens, osea, que movieclip esta dentro de otro, asi para estar seguros de solucionarlo posdata 2: el registration point es el circulito que muestra un símbolo al estar seleccionado desde fuera de su linea de tiempo, si seleccionas la herramienta puntero o transform tool puedes mover ese circulito blanco y dicho movieclip actuara dependiendo de él, registration point, simplemente prueba a hacer rotar un movieclip con un script y cambiale el registration point (circulito blanco ) por fuera de él y veras. Espero te sirva Hasta Luego!
hollaaaa....aca subo las fotos para q veas como esta el menu ....allmenu_mc vendria siendo el parent y bueno allBtn_mc esta dentro de allMenu_mc....y este tiene todo los botones separados como puedes ver en la imagen ....espero podamos llegar a una solucion jijiijjiij [img]http://l4c.me/fotos/gandriu/allmenu-mc[/img] [img]http://l4c.me/fotos/gandriu/allbtn-mc[/img] y bueno lo q intente hacer hoy es q elimine allMenu_mc y programe todos los botones para q giracen por eso te pregunto lo del registration point por q como le puse el listener para q giraran como son moviclip aql convertirlos le puedes poner el registration point pero por la forma de los botones como veras en la imagen nocesito manipular este punto para q giren bien ...como ponerle un pivote...pero bueno alli veremos paso a paso Gracias por ayudarme
holaaaa....como dije estoy intentando hacerlo de otra manera ahora hice una animacion y le puse un script.....ahora los botones me estan reaccionando estan girando bien solo q tengo un problema le puse un listener para q parar todos los botones cuando el mouse estaba arriba y uno de play para q siguiera cuando el mouse estaba afuera pero los botones paran cuando estas arriba de uno pero cuando sales todos siguen menos el q utilizaste anteriormente ...aqui subo el codigo q estoy usando en el menu y voy a subir el .swf de muestra espero me puedan ayudar ......
Código ActionScript :
//Modo Botones Menu Principal//
Historia_mc.buttonMode = true;
NuestraE_mc.buttonMode = true;
Productos_mc.buttonMode = true;
Recetas_mc.buttonMode = true;
Bonmart_mc.buttonMode = true;
Contact_mc.buttonMode = true;
Inicio_mc.buttonMode = true;
//Acciones De Glow Para Menu Principal//
var navBtnGlow:GlowFilter = new GlowFilter(0xFFFFFF, 0.5, 0, 15, 1, 2, true, false);
Historia_mc.addEventListener(MouseEvent.MOUSE_OVER, GlowOver);
Historia_mc.addEventListener(MouseEvent.MOUSE_OUT, GlowOut);
NuestraE_mc.addEventListener(MouseEvent.MOUSE_OVER, GlowOver);
NuestraE_mc.addEventListener(MouseEvent.MOUSE_OUT, GlowOut);
Productos_mc.addEventListener(MouseEvent.MOUSE_OVER, GlowOver);
Productos_mc.addEventListener(MouseEvent.MOUSE_OUT, GlowOut);
Recetas_mc.addEventListener(MouseEvent.MOUSE_OVER, GlowOver);
Recetas_mc.addEventListener(MouseEvent.MOUSE_OUT, GlowOut);
Bonmart_mc.addEventListener(MouseEvent.MOUSE_OVER, GlowOver);
Bonmart_mc.addEventListener(MouseEvent.MOUSE_OUT, GlowOut);
Contact_mc.addEventListener(MouseEvent.MOUSE_OVER, GlowOver);
Contact_mc.addEventListener(MouseEvent.MOUSE_OUT, GlowOut);
Inicio_mc.addEventListener(MouseEvent.MOUSE_OVER,GlowOver);
Inicio_mc.addEventListener(MouseEvent.MOUSE_OUT,GlowOut);
function GlowOver(event:MouseEvent):void{
event.target.filters = [navBtnGlow];
}
function GlowOut(event:MouseEvent):void{
event.target.filters = [ ];
}
var InicioBtnGlow:GlowFilter = new GlowFilter(0x00CCCC, 0.5, 0, 15, 1, 2, true, false);
Inicio_mc.addEventListener(MouseEvent.MOUSE_OVER, inicioGlowOver);
Inicio_mc.addEventListener(MouseEvent.MOUSE_OUT, inicioGlowOut);
function inicioGlowOver(event:MouseEvent):void{
event.target.filters = [InicioBtnGlow];
}
function inicioGlowOut(event:MouseEvent):void{
event.target.filters = [ ];
}
//Codigo Para Menu//
Historia_mc.addEventListener(MouseEvent.MOUSE_OVER,Parar);
Historia_mc.addEventListener(MouseEvent.MOUSE_OUT,Seguir);
NuestraE_mc.addEventListener(MouseEvent.MOUSE_OVER,Parar);
NuestraE_mc.addEventListener(MouseEvent.MOUSE_OUT,Seguir);
Productos_mc.addEventListener(MouseEvent.MOUSE_OVER,Parar);
Productos_mc.addEventListener(MouseEvent.MOUSE_OUT,Seguir);
Recetas_mc.addEventListener(MouseEvent.MOUSE_OVER,Parar);
Recetas_mc.addEventListener(MouseEvent.MOUSE_OUT,Seguir);
Bonmart_mc.addEventListener(MouseEvent.MOUSE_OVER,Parar);
Bonmart_mc.addEventListener(MouseEvent.MOUSE_OUT,Seguir);
Contact_mc.addEventListener(MouseEvent.MOUSE_OVER,Parar);
Contact_mc.addEventListener(MouseEvent.MOUSE_OUT,Seguir);
Inicio_mc.addEventListener(MouseEvent.MOUSE_OVER,Parar);
Inicio_mc.addEventListener(MouseEvent.MOUSE_OUT,Seguir);
function Parar(event:MouseEvent):void{
stop();
}
function Seguir(event:MouseEvent):void{
play();
}
bueno gracias espero puedan encontrar mi error ...muchas gracias por la ayuda
hola , ok, voy a hacer todo el movimiento de rotación y funciones etc. y te muestro el código junto a un swf, pero mas tarde, ya son las 3:21 am,.... bye!
no se como insertar un swf en un post entonces subi el fla en http://www.megaupload.com/?d=OKR53M09 dime cómo quieres que aparescan los submenus para poderte ayudar espero te sirva Hasta Luego!
holaaa ....el archivo no esta disponible en megaupload ...no me lo he podido descargar .....y bueno lo de los submenu deberian salir de el lado derecho de la pagina ....viste por q el menu esta en la esquina superioro dereche asi q saldria de abajo.....bueno por alli tengo otra dudita pero lo hare en un post nuevo ......pana gracias de verdad