Comunidad de diseño web y desarrollo en internet online

reutilizar funciones

Citar            
MensajeEscrito el 19 Feb 2008 12:39 am
Que tal amigos, bueno ando por aquí pues quería hacer una consulta acerca de reutilizacion de funciones, tengo mi script de animacion (en tips hace unas semanas lo postee) el cual se aplica para una pelicula con el controlador onEnterFrame:


var vel:Number = 0;

cubito_mc._x = 54;
cubito_mc._y = 54;
cubito_mc.onEnterFrame = function() {
this._x += vel;
if ((vel<8) && (this._x<318)) {
vel += 0.4;
} else {
vel -= 0.4;
if (vel<0.3) {
vel = 0;
}
}
}

esto funciona perfectamente. Ahora lo que quiero es hacer el scrip reutilizable para ahorrarme lineas de código, creo que algo hago mal pues no hay error en el script pero cuando pruebo no avanza:

var vel:Number = 0;
cubito_mc._x = 54;
cubito_mc._y = 54;

function movimiento() {
this._x += vel;
if ((vel<8) && (this._x<318)) {
vel += 0.4;
} else {
vel -= 0.4;
if (vel<0.3) {
vel = 0;
}
}
}
cubito_mc.onEnterFrame = movimiento();

En todo caso, hay alguna manera de lograr escribir esta función para reutilizarla sobre otras películas??. De Antemano gracias.

Por Mr. X-ecutor

96 de clabLevel

1 tutorial

Genero:Masculino  

12/02/2007

msie
Citar            
MensajeEscrito el 19 Feb 2008 12:51 am
sorry donde el código era vel < 8 ) no puse espacio entre el 8 y el paréntesis y salió el smilie.

Por Mr. X-ecutor

96 de clabLevel

1 tutorial

Genero:Masculino  

12/02/2007

msie
Citar            
MensajeEscrito el 19 Feb 2008 01:03 am
Ahi te sobran los parentesis

Código :

cubito_mc.onEnterFrame = movimiento

Y para que sea realmente reutilizable has de utilizar clases y POO.

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox
Citar            
MensajeEscrito el 21 Feb 2008 01:24 pm
O__o Sí ese era el problema, gracias. Pero ahora mi pregunta es: porque si quiero especificar un valor tipo number entre los paréntesis cuando se le coloca los paréntesis no funciona??

var vel:Number = 0;
cubito_mc._x = 54;
cubito_mc._y = 54;

function movimiento (xfin:Number) {
this._x += vel;
if (( vel<8 ) && ( this._x<xfin )) {
vel += 0.4;
} else {
vel -= 0.4;
if (vel<0.3) {
vel = 0;
}
}
}
cubito_mc.onEnterFrame = movimiento( 339 );

Pues en la ayuda de flash veo que construyen funciones con valores a especificar en los paréntesis y sí funcionan.

Un saludo

Por Mr. X-ecutor

96 de clabLevel

1 tutorial

Genero:Masculino  

12/02/2007

msie
Citar            
MensajeEscrito el 21 Feb 2008 01:38 pm

Código :

cubito_mc.onEnterFrame = function(){movimiento(339)};

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox

 

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