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

[SOLUCIONADO] AS3, activar un clip de pelicula desde una acción

Estas en el tema de AS3, activar un clip de pelicula desde una acción en el foro de Flash y Actionscript en Foros del Web. Buenas, pues resulta que cuando me enseñaron programación Flash lo hicieron con AS2, ahora tengo que hacer un proyecto usando AS3 y no logro hacer ...
  #1 (permalink)  
Antiguo 30/12/2013, 12:53
 
Fecha de Ingreso: diciembre-2012
Mensajes: 10
Antigüedad: 6 años, 6 meses
Puntos: 0
AS3, activar un clip de pelicula desde una acción

Buenas, pues resulta que cuando me enseñaron programación Flash lo hicieron con AS2, ahora tengo que hacer un proyecto usando AS3 y no logro hacer una cosa.

Lo que quiero hacer es usando un Leap Motion, haces un gesto con la mano hacia la derecha y entonces se active un clip de película.

He creado el clip de pelicula, poniendole una interpolacion clásica, con un stop en el primer y ultimo frame.

En la clase tengo esto: if (Math.abs(screenSwipe.direction.x) > Math.abs(screenSwipe.direction.y)&& screenSwipe.direction.x<0 && Math.abs(screenSwipe.direction.x)>0.5){trace("izqu ierda");}

Esto esta dentro de una funcion onFrame y funciona correctamente.

Ahora quiero agregar después de trace("izquierda"); algo para que mi MC llamado left se ponga en play. Pero no logro hacerlo. En AS2 poniendo directamente el nombre de instancia.play(); se ejecutaba pero en AS3 me sale un error diciendo "LLamada a un metodo play posiblemente no definido mediante una referencia del tipo estatico Class"

¿Hay alguna manera sencilla de poder ejecutar el clip de película desde allí? Es que estoy saturadísima y no logro encontrar nada que me ayude...

Un articulo a alguna explicacion de como se hace eso os lo agradeceria mucho... Gracias
  #2 (permalink)  
Antiguo 30/12/2013, 14:44
Avatar de Kottore  
Fecha de Ingreso: octubre-2007
Mensajes: 170
Antigüedad: 11 años, 9 meses
Puntos: 8
Respuesta: AS3, activar un clip de pelicula desde una acción

Hola Asuka!

Tal parece que tu problema es porque tu instancia no contiene el método play. Y esto a qué se debe? pueden ser varias cosas, pero sospecho que no estás heredando de MovieClip (que es el paquete que trae este método).

Quizá estás extendiendo de Sprite o algún otro objeto parecido.
Verifica que tu instancia efectivamente herede de MovieClip.

Saludos
__________________
これは僕のウェブだよね。
  #3 (permalink)  
Antiguo 05/01/2014, 11:57
 
Fecha de Ingreso: diciembre-2012
Mensajes: 10
Antigüedad: 6 años, 6 meses
Puntos: 0
Respuesta: AS3, activar un clip de pelicula desde una acción

Hola Kottore!

Gracias por contestar, pero si mi classe principal hereda de MovieClip.

La tengo escrita tal que así:

public class Swipe extends MovieClip {


¿En teoría debería funcionar tal cual no? Es que me estoy volviendo loca y no sé que estoy haciendo mal...

Si necesitáis que os copie todo el código o algo más decírmelo por favor.

Muchas gracias por adelantado ^^
  #4 (permalink)  
Antiguo 07/01/2014, 10:22
Avatar de Kottore  
Fecha de Ingreso: octubre-2007
Mensajes: 170
Antigüedad: 11 años, 9 meses
Puntos: 8
Respuesta: AS3, activar un clip de pelicula desde una acción

Hola otra vez Asuka ^^

A ver, la clase principal es Swipe?
Dentro de Swipe está ésto?:

Código ActionScript:
Ver original
  1. if (Math.abs(screenSwipe.direction.x) > Math.abs(screenSwipe.direction.y)&& screenSwipe.direction.x<0 && Math.abs(screenSwipe.direction.x)>0.5){trace("izqu ierda");}

Si es así tons vamos bien, pero en realidad la clase que necesitamos saber de dónde hereda es tu instancia, o sea éste:

Código ActionScript:
Ver original
  1. instancia.play();

instancia sólo es un movieClip en el escenario? No tiene una clases asociada o algo así? Verifica que en la biblioteca justo donde está éste MC no tenga una clase asociada a la derecha, en la columna que dice Vinculación con AS. En caso de tenerla hay que ver qué hay dentro de esa clase.

Saludos

PD. o si de plano ya estás enloqueciendo puedes subir el *.fla y verifico que pasa a ver si doy con el problema
__________________
これは僕のウェブだよね。
  #5 (permalink)  
Antiguo 07/01/2014, 10:38
 
Fecha de Ingreso: diciembre-2012
Mensajes: 10
Antigüedad: 6 años, 6 meses
Puntos: 0
Respuesta: AS3, activar un clip de pelicula desde una acción

Hola de nuevo Kottore!

La verdad es que el cambio de AS2 a 3 me ha dejado un poco descolocada...

Como dices tienes razón, en vinculación a AS tiene asignada la clase left, entro y pone lo siguiente:

Código:
package  {
	
	import flash.display.MovieClip;
	
	
	public class left extends MovieClip {
		
		
		public function left() {
			// constructor code
		}
	}
	
}

Tendría que eliminar la vinculación o como tengo que hacerlo para que no me de el error?

PD: La classe Swipe es la principal, dentro de ella tengo varias funciones para controlar el Leap Motion, como el controlador, constructor y donde ejecuto la interacción es la siguiente:

Código:
 public function onFrame(e:LeapEvent):void{
        //trace("leap frame");
		 var frame:Frame = e.frame;
Dentro de ella es donde tengo un switch para cada tipo de gesto, y dependiendo del gesto quiero ejecutar un clip de película u otro.

Solo quiero averiguar como puedo hacer para que este clip de pelicula se ejecute, una vez hecho ya creo que no tendré problemas.

No veo la opcion de agregar un archivo, si me lo dices lo subo ;)

Muchas gracias de veras ^^
  #6 (permalink)  
Antiguo 07/01/2014, 11:46
Avatar de Kottore  
Fecha de Ingreso: octubre-2007
Mensajes: 170
Antigüedad: 11 años, 9 meses
Puntos: 8
Respuesta: AS3, activar un clip de pelicula desde una acción

Si no utilizas la vinculación supongo que puedes eliminarla para que no haga cosas raras y probar si funciona.

Creo que aquí en los foros no hay opción para subir archivos pero podrías hacer un zip y enviarmelo a [email protected] y ahí vemos que pasa.

si encuentro el problema publico aquí la respuesta para que las personas que lleguen buscándola puedan ver cuál era la falla.

Saludos
__________________
これは僕のウェブだよね。
  #7 (permalink)  
Antiguo 12/01/2014, 03:23
 
Fecha de Ingreso: diciembre-2012
Mensajes: 10
Antigüedad: 6 años, 6 meses
Puntos: 0
Respuesta: AS3, activar un clip de pelicula desde una acción

Hola Kottore!

Te envié hace unos días el flash por correo, ¿te llegó? ¿Le has podido echar un vistazo?

Muchas gracias ^^
  #8 (permalink)  
Antiguo 06/02/2014, 02:42
 
Fecha de Ingreso: diciembre-2012
Mensajes: 10
Antigüedad: 6 años, 6 meses
Puntos: 0
Respuesta: AS3, activar un clip de pelicula desde una acción

Buenas, conseguí solucionar ese problema, al final era un tema de no definir bien las cosas pero me costo lo suyo encontrarlo.

Ahora me ha surgido otro problema (otra vez por las reminiscencias de AS2...). Resulta que al detectar una accion con las manos quiero que se ejecute una pelicula u otra (rollo historia interactiva) para ello he creado una variable de control y quiero que dicha variable de control cambie cuando llega al final de cada clip de pelicula, es decir tengo la introduccion, pues intento ir al ultimo fotograma de ese clip de pelicula y all poner que c (la variable de control) ya no es 0 sino 1 para que con la nueva accion se reproduzca la siguiente escena en vez de la introduccion, pero no me deja hacerlo. Pone que no esta declarada,quizas es que en AS3 no se puede hacer eso no lo sé... De momento pongo la variable de control justo cuando le doy al play, pero entonces si haces la accion antes de que termine el video se ejecuta el siguiente video y queda bastante mal...

O sea recapitulando, tengo en la clase principal la variable declarada:

Código:
public var c:int = 0;
Y dentro de un case este if

Código:
if (c==1) {escena2.play();}
Y me gustaría poderle decir que c sea 1 justo cuando el MC "introduccion" llegue al final, hay alguna manera de hacerlo?

Gracias ^^
  #9 (permalink)  
Antiguo 06/02/2014, 04:42
 
Fecha de Ingreso: diciembre-2012
Mensajes: 10
Antigüedad: 6 años, 6 meses
Puntos: 0
Respuesta: AS3, activar un clip de pelicula desde una acción

Vale me autocontesto para decir que después de horas batallando lo conseguí con addFrameScript, definitivamente la programación no es lo mio...

Etiquetas: as, as3, flash, pelicula
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:14.