Comunidad de diseño web y desarrollo en internet online

AyudA localToGlobal+globaltolocal

Citar            
MensajeEscrito el 05 Jun 2005 04:01 am
Hola como estan
Estuve trabajando con HitTest y creo que llegue a un punto en donde debo usar globalToLocal (lo cual no termino de comprender)

Resulta lo siguiente, tengo 1 MC y dentro de este otros 2

_root.mi_mc -> otro1_mc
-> otro2_mc

lo que quiero es detectar cuando chocan entre si otro1_mc y otro2_mc

lo estaba logrando pero estos MovieClip estaban en el _root, los meti dentro de otro MC y me dejo de funcionar todo

Para chequear la colision uso hitTest de la siguiente forma

if (mi_mc.otro1_mc.hitTest(mi_mc.otro2_mc._x, mi_mc.otro2_mc._y, true)) {
trace ("choco")
}

luego de que meti mis MovieClip dentro de otro , todo dejo de funcionar.

Mil gracias por las ayudas!!!

Por cv_pablos

8 de clabLevel



 

msie
Citar            
MensajeEscrito el 01 Feb 2009 10:33 pm
tengo el mismo problema y lamentablemente no he encontrado solución, lo que me tocó hacer fue colocar todos mis mc en el stage principal en un frame instanciado y llamarlo desde ahí..
Lo siento broder, he probado un montón de cosas y no he obtenido solución

Por mjormy

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Feb 2009 04:43 am
Qué tal!!! :lol:
Tengo la solución para utilizar localToGlobal dentro de un movie clip.. El caso es que utilizando conjuntamente tanto LocalToGlobal como GlobalToLocal, es posible obtener una especie de LocalToLocal para seguir con un movieclip las coordenadas de otro sin importar su profundidad en la línea de tiempo.
Aquí el código para quien lo requiera..

Código :

enlazarPosicion = function(mover, target){
// creamos el punto target cuyas coordenadas deseamos seguir con otro mc cualquiera
var posTarget = new Object();
posTarget.x = target._x;
posTarget.y = target._y;
// transformamos el punto posTarget a Global usando el _parent, sea cual fuere
target._parent.localToGlobal(posTarget);
// transformamos en locales las coordenadas del mc que vamos a mover con posTarget
mover._parent.globalToLocal(posTarget);
// cambiamos las coordenadas del mc mover a la posición de nuestro posTarget
mover._x = posTarget.x;
mover._y = posTarget.y;
}

Esta función la podemos usar desde y hacia cualquier profundidad de mc sin importar cuántos anidamientos tengamos de la siguiente manera:

Código :

enlazarPosicion(rutaAbsoluta_MC_mover, rutaAbsoluta_MC_coordsAseguir);

Lo que hará que MC_mover se ubique en las coordenadas de MC_coordsAseguir.
Espero que a alguien le pueda ser útil este aporte.
Saludos

Por mjormy

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Dic 2009 07:18 pm
muy bien lo estaba buscando vere si funciona

Por petochis

16 de clabLevel



Genero:Masculino  

firefox

 

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