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

Uso del onMotionFinished

Estas en el tema de Uso del onMotionFinished en el foro de Flash y Actionscript en Foros del Web. Hola a todos tengo un problema con el correcto uso de onMotionFinished, y ya me trae de cabeza pq no sé como resolverlo, a ver ...
  #1 (permalink)  
Antiguo 29/03/2010, 13:59
Avatar de Hapki  
Fecha de Ingreso: febrero-2005
Mensajes: 263
Antigüedad: 19 años, 9 meses
Puntos: 1
Uso del onMotionFinished

Hola a todos tengo un problema con el correcto uso de onMotionFinished, y ya me trae de cabeza pq no sé como resolverlo, a ver si me pueden echar una mano...

Verán y es que... anoche dejé un trabajo hecho y funcionando todo perfecto, y hoy entro en el flash de nuevo, y sin hacer nada le doy a ctrl+intro para volver a verlo, y ahora me aparece un error, cuando ayer no aparecía, y sin hacer nada... ... el problema es éste:

Código:
fotografia_mc.onPress = function():Void   
{   
   twMove4 = new Tween(web_mc, "_y", Strong.easeIn, web_mc._y, Stage.height, 1.5, true);  
      
   twMove4.onMotionFinished=function(){  
   gotoAndPlay("fotografia");  
   }  
}
Con él lo que hago es que cuándo la animación del twMove4 termine, el root vaya al frame etiquetado como "fotografia", pues al reproducirlo hoy, me da un error que pone:

Código:
No hay ninguna propiedad que lleve por nombre 'onMotionFinished'.

Y al reproducir la peli, ésta se va directamente al frame llamado "fotografia" sin dejarme pulsar antes el "fotografia_mc".. nada directamente se va allí...(tengo los stops bien puestos)

¿alguien sabe que pasa?
__________________
Nada es imposible para una mente dispuesta
  #2 (permalink)  
Antiguo 29/03/2010, 14:10
Avatar de Offrenbaruna  
Fecha de Ingreso: octubre-2004
Mensajes: 537
Antigüedad: 20 años, 1 mes
Puntos: 1
Respuesta: Uso del onMotionFinished

asegurate que llamas a las librerias correspondientes:

Código PHP:
import mx.transitions.Tween;
import mx.transitions.easing.*; 
tambien asegurate de declarar la variable:
Código PHP:
var  twMove4 = new Tween(web_mc"_y"Strong.easeInweb_mc._yStage.height3/2true); 
dentro de tu tween el tiempo de respuesta deve de estar en enteros no uses el punto flotante, muy importante !!

Código PHP:
3/1.5 seg
__________________

  #3 (permalink)  
Antiguo 30/03/2010, 02:36
Avatar de Hapki  
Fecha de Ingreso: febrero-2005
Mensajes: 263
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Uso del onMotionFinished

Lo que me comentas lo he revisado y ya está todo bien, por cierto, pq no se puede usar puntos??

Lo de declarar la variable, lo he hecho así:
Código PHP:
var twMove4:Tween
twMove4 = new Tween(web_mc, .... etc.... 
Pero al reproducir me sigue devolviendo que no hay ninguna propiedad onMotionFinished, que no entiendo lo que me está diciendo...

A ver si podemos resolverlo, pq la verdad me es bastante urgente, y es que no tengo ni idea de que hacer :(

Gracias.
__________________
Nada es imposible para una mente dispuesta
  #4 (permalink)  
Antiguo 30/03/2010, 13:57
Avatar de Offrenbaruna  
Fecha de Ingreso: octubre-2004
Mensajes: 537
Antigüedad: 20 años, 1 mes
Puntos: 1
Respuesta: Uso del onMotionFinished

Código PHP:
import mx.transitions.Tween;
import mx.transitions.easing.*;  
fotografia_mc.onPress = function()
{   
  var  
twMove4:Tween = new Tween(web_mc"_y"Strong.easeInweb_mc._yStage._height3/2true);  
      
   
twMove4.onMotionFinished=function(){  
   
gotoAndPlay("fotografia");  
   }  

Cheka con esto a ver si se arregla, vuelvo a decir checa si tienes declaradas las libretias Tween y ease, dentro del mismo layer donde tienes tus acciones

Salu2
__________________

  #5 (permalink)  
Antiguo 30/03/2010, 15:34
Avatar de Hapki  
Fecha de Ingreso: febrero-2005
Mensajes: 263
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Uso del onMotionFinished

Gracias Offrenbaruna por tu atención, aunque he copiado y pegado lo que me das y no funciona, pero ... he descubierto algo MUY MUY EXTRAÑO, a ver si me lo puedes aclarar, pq estoy flipando jeje...

En un momento de lapsus y desesperación, q ya no sabía que hacer, me ha dado por copiar todos los frames y programacion y pegarlo de nuevo en una peli nueva con las mismas caracteristicas, es decir, un copia y pega simplemente, lo reproduzco y FUNCIONA... ahi ya empiezo a flipar... pero luego voy a guardar, lo guardo en la misma carpeta donde tengo mi antigua version con el mismo nombre pero diferente numero, es decir, la anterior se llamaba index1 pues la nueva index2, y vuelvo a probar y YA NO FUNCIONA... ahí ya flipo un poco más jejeje... pero luego me digo... y si lo guardo tal cual pero en otra carpeta distinta?? pues lo hago, y VUELVE A FUNCIONAR....

Yo la verdad no entiendo absolutamente nada, estoy flipando... ¿sabes a que se puede deber este misterio???
__________________
Nada es imposible para una mente dispuesta
  #6 (permalink)  
Antiguo 30/03/2010, 16:01
Avatar de Offrenbaruna  
Fecha de Ingreso: octubre-2004
Mensajes: 537
Antigüedad: 20 años, 1 mes
Puntos: 1
Respuesta: Uso del onMotionFinished

Dejame decirte que si lo es y me parece algo muy raro porque a mi paso exactamente con algunos proyectos he hice lo mismo que tu, decidi crear un fla nuevo y funciono pero no me dejo de funcionar a pesar de que estaba en el mismo directori.

Crea un nuevo directorio con los mismos elementos con un diferente nombre y despues borras el directorio donde tienes tus archivos viejos y renombras el directorio nuevo con el viejo nombre !!
__________________

  #7 (permalink)  
Antiguo 31/03/2010, 07:52
 
Fecha de Ingreso: enero-2008
Ubicación: Concepción, Chile
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 3
Respuesta: Uso del onMotionFinished

Amigo:

Aunque no he tenido el tiempo suficiente para entender tu problema, la sintaxis de tu evento onMotionFinished no es la correcta, aunque es la que aparece en la ayuda de FLASH CS3, lo correcto es:

Código actionscript:
Ver original
  1. import mx.transitions.Tween;
  2. import mx.transitions.easing.*;
  3.  
  4.  
  5.  
  6. var d:Tween = new Tween(clip, "_alpha", None.easeInOut, 0, 100, 1, true);
  7. d.addListener(clip);
  8. clip.onMotionFinished = function():Void {
  9.     trace(this)
  10. }

Saluda Atte.
Claudio Barrera Asencio.
  #8 (permalink)  
Antiguo 31/03/2010, 09:53
Avatar de Hapki  
Fecha de Ingreso: febrero-2005
Mensajes: 263
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Uso del onMotionFinished

Ea, pos ya está todo en una nueva carpeta y funcionando...
Sobre la sintaxis del onMotionFinished... ¿como es posible que en la ayuda del programa aparezca mal entonces? esto si que ya no lo entiendo... vaya días que llevo, madre mía...

Gracias polo_W12
__________________
Nada es imposible para una mente dispuesta

Etiquetas: Ninguno
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 17:03.