Comunidad de diseño web y desarrollo en internet online

Conflictos entre ActionScript 2 y AS 3

Citar            
MensajeEscrito el 13 Dic 2010 01:22 pm
Hola, estoy empezando en lo del diseño web flash y creé un menú viendo unos tutoriales en actionscript 2.

Tengo 2 problemas:

PROBLEMA 1:

El problema es que me gustaría meter cosas en 3D y cuando abro ese archivo con adobe CS4/CS5 me dice que para usar la herramienta 3D necesito as3. Lo que pasa es que no sé trabajar con actionscript 3 y se me hace muuuuho más dificil que el dos, sobre todo para dar funcionalidad al rollover...de los mclips que conforman mis botones del menú.

Hay alguna forma de trabajar con efectos 3D sin renunciar a actionscript 2?? Este proyecto es para una asignatura que estoy curseando y no tengo demasiados días para elaborar la web, creen que sería recomendable intentar abandonar el 3d y limitarme a AS 2 ????

PROBLEMA 2:

Bueno, si creéis que merecería la pena seguir con el diseño 3D, he intentado mirando otros post del foro, cambiar mis funciones cortitas del menú (en AS2) las cuales están escritas en el fotograma 1 de la capa acciones de mi única escena:

// Acciónes del botón de inicio
btn_inicio.onRollOver = function () {
btn_inicio.gotoAndPlay("on");
}
btn_inicio.onRollOut = function () {
btn_inicio.gotoAndPlay("off");
}


Por las siguientes (en AS3), ubicadas donde se encontraban las anteriores):
import flash.display.MovieClip;
import flash.events.MouseEvent;

btn_inicio.addEventListener(MouseEvent.ROLL_OVER,Over);
btn_inicio.addEventListener(MouseEvent.ROLL_OUT,Out);

btn_inicio.buttonMode = true;
btn_inicio.useHandCursor = true;

function Over(myEvent:MouseEvent){
btn_inicio.gotoAndPlay("on");
}
function Out(myEvent:MouseEvent){
btn_inicio.gotoAndPlay("out");
}


La cuestión es que tal y como las he implementado (tanto en AS2 como en AS3) tendría que escribir 2 funciones como estas para cada botón y me gustaría hacer algo así como:

function Out/Over(myEvent:MouseEvent, BOTON: NO_SÉ_QUÉ_TIPO_TENDRÍA QUE PONER AQUÍ){
BOTON.gotoAndPlay("out");
}


y así hacer unicamente 2 funciones a las que poder llamr con cada mclip que conforman los botones de mi menú; algo así como Over(btn_inicio) o Over(btn_contacto) ..... Funciones reutilizables, vamos.

cómo puede hacerse esto??? o quizás no puede hacerse??

ESPERO QUE ALGUIEN PUEDA AYUDARME, PORQUE YA NO SÉ QUÉ HACER AHORA MISMO ESTOY EN UN PUNTO MUERTO Y NO SÉ QUÉ DECISIÓN TOMAR.


MUCHAS GRACIAS DE ANTEMANO A TODOS !!! =)

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

msie8
Citar            
MensajeEscrito el 13 Dic 2010 02:02 pm
BuenAS:

No hay mayor problema, en event.currentTarget tienes el botón(o movieClip) al que has añadido el addEventListener:

Código ActionScript :

function Over(myEvent:MouseEvent){
   MovieClip(myEvent.currentTarget).gotoAndPlay("on");
}
function Out(myEvent:MouseEvent){
   MovieClip(myEvent.currentTarget).gotoAndPlay("out");
}


Estas dos te valdría para todos los botones.

He escrito aquí directamente, y puede que lleve alguna errata.

Un saludo.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.