Comunidad de diseño web y desarrollo en internet online

laberinto que traspasa las paredes.por que?

Citar            
MensajeEscrito el 13 Abr 2010 07:21 pm
hola que tal, estoy haciendo un laberinto el cual es una imagen de fondo, un layer arriba le coloco un mc maze que contiene las paredes invisibles con la misma forma de las paredes del dibujo para que al carro tocarlas se detenga.

el carro se mueve bien, la cosa esta en que el carro de vez en cuando traspasa ciertas paredes (no siempre el mismo lugar), cosa que no deberia de hacer.

coloco el codigo para ver si ven por que puede estar pasando eso y dejo la direccion para que lo prueben y vean lo que sucede.

http://rummore.com/clientes/hener/laberinto/laberinto.swf

este codigo lo lleva el mc maze que a su vez contiene el mc wall (parecedes, dibujadas con el pincel de flash)

Código :


         onClipEvent (load) {

      var  myBounce:Number= 3;
}
       
       onClipEvent (enterFrame) {
              with (_root.movel_mc) {

                  // Controls Player Speed
                  //mySpeed = 2;

                  // Controls how far the Player bounces off the wall after impact
                 
               
              
              

                  // detecta si el carrito chocó con la pared
                  if (walls.hitTest(getBounds(_root).xMax, _y, true)) {
                 //_root.gotoAndStop(4);
                 
                      _x -= myBounce;
                  }
            
                  if (walls.hitTest(getBounds(_root).xMin, _y, true)) {
                 //  _root.gotoAndStop(4);
                      _x += myBounce;
                 
              }
                  if (walls.hitTest(_x, getBounds(_root).yMax, true)) {
                  // _root.gotoAndStop(4);
                      _y -= myBounce;
                  }
            
                  if (walls.hitTest(_x, getBounds(_root).yMin, true)) {
               //    _root.gotoAndStop(4);
                      _y += myBounce;
                  }
            if (_root.finish.hitTest(_x, getBounds(_root).yMin, true)) {
                      _root.gotoAndStop(3);
                  }
              
              
              
           }
       }





he estado probando lo siguiente, el tutorial que lei para mover laberintos (un puzzle de ffiles.com) funciona igual que este sólo que mi carrito tiene rotacion....al probar moverme con un dibujo que no es el carrito, un simple circulo de flash no traspasa...tendrá algo que ver??

espero me puedan ayudar a detectar el problema

saludos y gracias de antemano

Por unasemana

Claber

166 de clabLevel



 

Venezuela

firefox
Citar            
MensajeEscrito el 14 Abr 2010 06:17 pm
Usualmente los juegos de este tipo se basan en tiles, que componen un mundo en base a un mapa que es básicamente una estructura de datos que contiene la descripción del escenario, luego al mover el personaje haces un lookup en ese array u objeto y sabes que hacer. El hitTest a poco que quieras hacer algo serio no sirve (en todo caso combinado con otras cosas) básicamente porque es demasiado lento.
Lee sobre tiles en gotoandplay.it

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Abr 2010 02:43 pm
gracias por el dato, ya voy a revisarlo

Por unasemana

Claber

166 de clabLevel



 

Venezuela

firefox

 

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