Usar variables en llamadas gotoAndPlay

El problema que tengo es que quiero entrar en varios MClips que tengo declarados en una array, y entrar según los voy llamando a través de una llamada.
No se si lo que quiero hacer es posible o hay que buscar otra manera de hacerlo, pero si se puede hacer me gustaría saber como. Os dejo la linea de código para que veáis que hago.
//La variable se llama bola y los movie clips están en rosco
_global.bola = rosco[slide-1];
_parent.mc_questions._global.bola.gotoAndPlay("frame");
La variable bola va cambiando y debería ir llamando a los MC según los voy llamando.
A ver si alguien puede echarme una mano.

1 Respuesta

Respuesta
El problema es que estyas accediente a global como si global estuviera dentro de mc_questions cuando en realidad _global no esta dentro de ese movie clip. Borra ese _parent. Mc_questions de modo que te quede simplemente
_global.bola.gotoAndplay("frame");
El caso es que los MC a los que voy llamando si que están dentro de mc_questions, por lo que tengo que llamar primero a mc_questions y luego a los MC que hay dentro... pero no funciona, ¿alguna idea? Gracias!
Edgar.
¿Cómo has declarado la variable y en donde?
Te pase el código
_global.bola = rosco[slide-1];
_parent.mc_questions._global.bola.gotoAndPlay("frame");
y rosco es una array que tengo declarado desde un AS externo,
function questions() {
_global.rosco = new Array("Q1", "Q2", "Q3", "Q4");
}
Pero yo hago un trace(bola); y la variable esta bien, el caso es que no hace la llamada. ¿Tu lo has probado con algún ejemplo y te ha funcionado? Quizás si me pasas un ejemplo pueda ver como lo haces, gracias!
Edgar.
Lo que quieres hacer es bien fácil, no se por que te esta dando tantos problemas.
¿Por qué declaras la variable como global?
Como te dije desde un principio, el problema es que estas haciendo referencia a _global como si estuviera dentro del movie clip questions y no es así.
Por ahora no tengo ningún ejemplo.
Puede probar con lo siguiente, guarda en la variable globar bola la ruta completa del movie clip ej:
_global.bola = ['_root.mc_uno.elmovieclip']
O algopor el estilo..
Pues no se porque tengo tantos problemas pero no hay manera de que funcione. El caso es que la variable tiene el valor correcto, porque hago un trace y funciona.
Me he dado cuenta haciendo pruebas que si a la variable bola le asigno directamente el valor (nombre del MC) si funciona, ahora bien si le asigno el valor a través de otra variable no funciona.
Es decir si pongo:
var bola= Q1; (entonces si funciona)
Si pongo var bola= rosco[1]; (donde están almacenados los MC no me funciona y si hago un trace de bola me sale Q1)
No se que pasa...
Edgar.
Tu array tiene strings de manera que lo que le estas pasando a tu variable es un string y no el nombre de instancia de un movieclip.
Prueba quitando las comillas a
_global.rosco = new Array("Q1", "Q2", "Q3", "Q4");
He probado de quitar las comillas y no me reconoce la variable, en el trace me pone undefined... He conseguido que funcione con un método un poco rudimentario y es definiendo la variable "bola" en cada frame, quería que lo hiciera automáticamente con un array pero lo haré así por ahora. Si se te ocurre alguna idea más avisame. Gracias por tu ayuda.
Edgar.
Eso es una solución que no me convence. Pasa me tu archivo a buzuzyma[at]hotmail.com
Reemplaza [at] por @
No es necesario que me agregues a tu lista de contactos ya que como no acepto preguntas directamente a mi email no hay razón por la que me debas tener entre tus contactos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas