Comunidad de diseño web y desarrollo en internet online

Orden aleatorio en el Puzzle

Citar            
MensajeEscrito el 02 Sep 2007 03:10 pm
Holas buenas, ¿Alguien sabría como hacer para que en el ejemplo del puzzle de "Teseo" (http://www.cristalab.com/foros/t35392.html) las piezas aparezcan desordenadas?
Muchas gracias.

Por reivajaya

16 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 03 Sep 2007 03:45 pm
Con estas 2 funciones podrás rotar cualquier pieza y mezclar el puzzle:

Código :

function rotar90(clip){// gira la pieza(clip)  90º 
      clip._x -=clip.a2; clip._y -=clip.b2; 
      rt = clip._rotation += 90;
      clip.a2 = 2.5*(m1*(rt!=0)+m1*(rt==180)+m2*(rt==90)-m2*(rt==270));
      clip.b2 = 2.5*(m2*(rt!=0)+m2*(rt==180)-m1*(rt==90)+m1*(rt==270)); 
      clip._x +=clip.a2; clip._y +=clip.b2 
   }
// mezcla las piezas en el espacio definido por el cuadrado
// con esquina superior-izquierda(a,b) e inferior-derecha (c,d).
//Si se pasa un quinto valor(e) cualquiera, gira la pieza aleatoriamente 90,180 o 270º
function mezclar(a,b,c,d,e){ 
   len=pz.length;
   for(var j=0;j<len;j++){
      pz[j]._x=a+(c-a)*Math.random();
      pz[j]._y=b+(d-b)*Math.random();
       if(e){
         as=Math.floor(4*Math.random());
         for(var k=0;k<as;k++){
            rotar90(pz[j]);
         }
      }
   }
}


Ejemplo:
mezclar(0,0,500,500,1)

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

firefox
Citar            
MensajeEscrito el 13 Sep 2014 05:14 pm
Hola, qué tal, se que este es un tema antiguo... muuuy antiguo, pero es lo que necesito, buscaba justamente este ejercicio y está muy bueno, solo que también necesito que las piezas aparezcan desordenadas, y luego ir armando el rompecabezas, no es necesario que roten, simplemente que el juego empiece con las piezas fuera de lugar, traté de hacerlo en el código, y luego pegando el que está más arriba, pero no funciona, si pudieran echarme una mano, se los agradecería mucho.

Por rocknroll

0 de clabLevel



 

chrome

 

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