Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function ReyEnPeligroRayosX(){
  2.  
  3.         EscaqueReyBlanco = Almacen_Tablero_posicion[Almacen_Tablero_posicion.length-1].RB;
  4.         EscaqueReyNegro = Almacen_Tablero_posicion[Almacen_Tablero_posicion.length-1].RN;
  5.  
  6.         //// ANTES DE PONER LO DE ESTATICO PARA LAS PIEZAS DEL REY, HAY QUE PONER QUE LAS PIEZAS QUE ANTES FUERON ESTATICAS
  7.         //// COPMPROBAR SI SE HA MOVIDO EL REY Y PONERLAS COMO NORMAL, QUE SE PUEDAN MOVER, SI NO SE QUEDA EL ESTADO ANTERIOR
  8.         //// SI SIGUE EL REY DETRAS DE ELLAS NADA, PERO SI EL REY SE MUEVE Y DEJA DE TENER ESA PIEZA DELANTE PUES ESA PIEZA
  9.         //// QUE CAMBIE A ESTATICO = 0 PARA QUE SE PUEDA MOVER, ALGO LOGICO SERIA DECIR QUE SI NO ESTAN EN LA MISMA FILA Y , ADEMAS,
  10.         //// NO ESTAN EN SU DIAGONAL ( +/- 7 y +/- 9) YA NO ESTÁ TAPANDO AL REY Y SE PUEDE LIBRAR DEL ESTATICO QUE SE COMENTA.
  11.  
  12.         Array_Piezas_guardadas_B = [Pieza_guardada_diag1_B,Pieza_guardada_diag2_B,Pieza_guardada_diag3_B,Pieza_guardada_diag4_B
  13.                     , Pieza_guardada_rect1_B, Pieza_guardada_rect2_B, Pieza_guardada_rect3_B, Pieza_guardada_rect4_B];
  14.  
  15.         Array_Piezas_guardadas_N = [Pieza_guardada_diag1_N,Pieza_guardada_diag2_N,Pieza_guardada_diag3_N,Pieza_guardada_diag4_N
  16.                     , Pieza_guardada_rect1_N, Pieza_guardada_rect2_N, Pieza_guardada_rect3_N, Pieza_guardada_rect4_N]; 
  17.  
  18.         Elegir_Array_Piezas_guardadas = [Array_Piezas_guardadas_B,Array_Piezas_guardadas_N];       
  19.         Color_Contrario = ["Negro", "Blanco"];
  20.         Mismo_Color = ["Blanco","Negro"];  
  21.         Elegir_EscaqueRey = [EscaqueReyBlanco, EscaqueReyNegro];
  22.  
  23.     for(k=0;k<=1;k++){
  24.  
  25.         for(i=0;i<8;i++){
  26.             if(Elegir_Array_Piezas_guardadas[k][i] != 0){       //SI NO DA ERROR AL ANALIZAR EL 0 DE UNA VARIABLE INICIALIZADA 
  27.                 if( (Number(Elegir_Array_Piezas_guardadas[k][i].parent().parent().attr("id")) != Number($('#'+Elegir_EscaqueRey).parent().attr("id"))) &&
  28.                 (((Number(Elegir_Array_Piezas_guardadas[k][i].parent().attr("id"))) - Elegir_EscaqueRey) % 7 != 0) &&
  29.                 (((Number(Elegir_Array_Piezas_guardadas[k][i].parent().attr("id"))) - Elegir_EscaqueRey) % 9 != 0)){ //.PARENT.PARENT PARA ACCEDER ARRIBA AL ID DE LA FILA PARA SABER SI ESTAN EN MISMA FILA
  30.              
  31.                  Elegir_Array_Piezas_guardadas[k][i].attr('estatico', '0');
  32.                 }
  33.             }
  34.         }
  35.  
  36.     //////////////////////EN DIAGONAL 1 ///////////////////////// NUEVO EN 2019
  37.  
  38.             FilaReyTodo = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  39.  
  40.             contador_cuenta_casillas = 0;  
  41.             Casillas_existentes = 0;   
  42.  
  43.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  44.                 contador_cuenta_casillas++;
  45.            
  46.                 // LOS NUMEROS SIGUIENTES SON PARA DECIR SI SE ENCUENTRAN EN EL BORDE DEL TABLERO
  47.                 if( ( ArrayPiezasNegrasDiagonal.includes(($('#'+(Elegir_EscaqueRey+Array_Multiplo_9[m])+' img').attr("id_1")) &&
  48.                          ([57,58,59,60,61,62,63,15,23,31,39,47,55].includes(Elegir_EscaqueRey+Array_Multiplo_9[m]) == 1  ) )) ||
  49.  
  50.                     (Array_Multiplo_9[m]+Elegir_EscaqueRey<=63 && (FilaReyTodo+(contador_cuenta_casillas)) == (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_9[m])).parent().attr('id'))) &&
  51.                     ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_9[m])).parent().attr('id')))+1) == ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_9[m+1])).parent().attr('id')))) ||
  52.                             m == 0))  {
  53.                             Casillas_existentes++;
  54.                             Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_9[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  55.                     }
  56.             }
  57.  
  58.                 for(m=0;m<Casillas_existentes;m++){
  59.  
  60.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  61.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  62.                     if(ArrayPiezasNegrasDiagonal.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true ){
  63.                         console.log("He encontrado una pieza enemiga negra")
  64.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  65.                         break;
  66.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  67.                         HayPiezaNegraEntreMediasInofensiva = 1;
  68.                     }
  69.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  70.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  71.                         NumeroDePiezasInterpuestas++;
  72.                     }
  73.                 }
  74.  
  75.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  76.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  77.  
  78.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  79.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k]) == 0){
  80.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  81.                                     Elegir_Array_Piezas_guardadas[k][0] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  82.  
  83.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  84.                                 }
  85.                             }
  86.                         }
  87.                        
  88.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  89.    
  90.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  91.  
  92.     //////////////////////EN DIAGONAL 1 ///////////////////////// NUEVO EN 2019
  93.  
  94.     //////////////////////EN DIAGONAL 2 ///////////////////////// NUEVO EN 2019
  95.  
  96.             FilaReyTodo2 = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  97.  
  98.             contador_cuenta_casillas = 0;  
  99.             Casillas_existentes = 0;   
  100.  
  101.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  102.                 contador_cuenta_casillas++;
  103.  
  104.                 if( ( ArrayPiezasNegrasDiagonal.includes(($('#'+(Elegir_EscaqueRey+Array_Multiplo_7[m])+' img').attr("id_1"))) &&
  105.                      ([8,16,24,32,40,48,56,57,58,59,60,61,62].includes(Elegir_EscaqueRey+Array_Multiplo_7[m]) == 1  ) ) ||
  106.  
  107.                     (Array_Multiplo_7[m]+Elegir_EscaqueRey<=63 &&  (FilaReyTodo2+(contador_cuenta_casillas)) == (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_7[m])).parent().attr('id'))) &&
  108.                     ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_7[m])).parent().attr('id')))+1) ==     ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_7[m+1])).parent().attr('id')))) ||
  109.                     m == 0))  {
  110.                         Casillas_existentes++;
  111.                         Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_7[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  112.                     }
  113.             }
  114.  
  115.                 for(m=0;m<Casillas_existentes;m++){
  116.  
  117.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  118.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  119.                     if(ArrayPiezasNegrasDiagonal.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true ){
  120.                         console.log("He encontrado una pieza enemiga negra")
  121.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  122.                         break;
  123.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  124.                         HayPiezaNegraEntreMediasInofensiva = 1;
  125.                     }
  126.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  127.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  128.                         NumeroDePiezasInterpuestas++;
  129.                     }
  130.                 }
  131.  
  132.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  133.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  134.  
  135.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  136.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k]) == 0){
  137.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  138.                                     Elegir_Array_Piezas_guardadas[k][1] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  139.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  140.                                 }
  141.                             }
  142.                         }
  143.                        
  144.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  145.  
  146.                        
  147.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  148.  
  149.     //////////////////////EN DIAGONAL 2 ///////////////////////// NUEVO EN 2019
  150.  
  151.     //////////////////////EN DIAGONAL 3 ///////////////////////// NUEVO EN 2019
  152.  
  153.             FilaReyTodo3 = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  154.  
  155.             contador_cuenta_casillas = 0;  
  156.             Casillas_existentes = 0;   
  157.  
  158.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  159.                 contador_cuenta_casillas++;
  160.  
  161.                 if((Array_Multiplo_9_Neg[m]+Elegir_EscaqueRey<=63 && (FilaReyTodo3-(contador_cuenta_casillas)) == (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_9_Neg[m])).parent().attr('id'))) &&
  162.                     (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_9_Neg[m])).parent().attr('id'))) == ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_9_Neg[m-1])).parent().attr('id')))-1) ||
  163.                     m == 0))  {
  164.                         Casillas_existentes++;
  165.                         Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_9_Neg[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  166.                     }
  167.             }
  168.  
  169.                 for(m=0;m<Casillas_existentes;m++){
  170.  
  171.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  172.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  173.                     if(ArrayPiezasNegrasDiagonal.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true){
  174.                         console.log("He encontrado una pieza enemiga negra")
  175.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  176.                         break;
  177.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  178.                         HayPiezaNegraEntreMediasInofensiva = 1;
  179.                     }
  180.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  181.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  182.                         NumeroDePiezasInterpuestas++;
  183.                     }
  184.                 }
  185.  
  186.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  187.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  188.  
  189.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  190.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k][k][k][k]) == 0){
  191.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  192.                                     Elegir_Array_Piezas_guardadas[k][2] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  193.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  194.                                 }
  195.                             }
  196.                         }
  197.                        
  198.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  199.  
  200.                        
  201.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  202.     //////////////////////EN DIAGONAL 3 ///////////////////////// NUEVO EN 2019
  203.  
  204.  
  205.     //////////////////////EN DIAGONAL 4 ///////////////////////// NUEVO EN 2019
  206.  
  207.             FilaReyTodo4 = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  208.  
  209.             contador_cuenta_casillas = 0;  
  210.             Casillas_existentes = 0;   
  211.  
  212.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  213.                 contador_cuenta_casillas++;
  214.  
  215.        
  216.                 if(((Array_Multiplo_7_Neg[m]+Elegir_EscaqueRey<=63) && (FilaReyTodo4-(contador_cuenta_casillas)) == (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_7_Neg[m])).parent().attr('id'))) &&
  217.                     (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_7_Neg[m])).parent().attr('id'))) == ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_7_Neg[m-1])).parent().attr('id')))-1) ||
  218.                      m == 0))  {
  219.                         Casillas_existentes++;
  220.                         Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_7_Neg[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  221.                     }
  222.             }
  223.  
  224.  
  225.             for(m=0;m<Casillas_existentes;m++){
  226.  
  227.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  228.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  229.                     if(ArrayPiezasNegrasDiagonal.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true ){//ESTE CODIGO ES PARA COMPROBAR QUE HAY ALFIL O DAMA BLANCA ATACANDO, QUE ES LO QUE NOS INTERESA EN LAS DIAGONALES, SI NO SE ACTIVARIA EL ESTATICO POR CUALQUIER PIEZA, DE AHI QUE BUSQUE LAS LETRAS CORRESPONDIENTES A ESA PIEZA
  230.                         console.log("He encontrado una pieza enemiga negra")
  231.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  232.                         break;
  233.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  234.                         HayPiezaNegraEntreMediasInofensiva = 1;
  235.                     }
  236.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  237.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  238.                         NumeroDePiezasInterpuestas++;
  239.                     }
  240.                 }
  241.  
  242.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  243.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  244.  
  245.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  246.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k]) == 0){
  247.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  248.                                     Elegir_Array_Piezas_guardadas[k][3] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  249.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  250.                                 }
  251.                             }
  252.                         }
  253.                        
  254.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  255.  
  256.                        
  257.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  258.  
  259.     //////////////////////EN DIAGONAL 4 ///////////////////////// NUEVO EN 2019
  260.  
  261.     //////////////////////RECTO 5 ///////////////////////// NUEVO EN 2019
  262.  
  263.             FilaReyTodo5 = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  264.  
  265.             contador_cuenta_casillas = 0;  
  266.             Casillas_existentes = 0;   
  267.  
  268.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  269.                 contador_cuenta_casillas++;
  270.  
  271.                 if((ArrayPiezasNegrasRecto.includes(($('#'+(Elegir_EscaqueRey+Array_Multiplo_8[m])+' img').attr("id_1"))) &&
  272.                     ([56,57,58,59,60,61,62,63].includes(Elegir_EscaqueRey+Array_Multiplo_8[m]) == 1  ) ) || // includes es si el nº existe dentro del array
  273.  
  274.                     ((Array_Multiplo_8[m]+Elegir_EscaqueRey<=63) && (FilaReyTodo5+(contador_cuenta_casillas)) ==(Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_8[m])).parent().attr('id'))) &&
  275.                     ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_8[m])).parent().attr('id')))+1) == ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_8[m+1])).parent().attr('id')))) || m == 0))  {
  276.                         Casillas_existentes++;
  277.                         Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_8[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  278.                     }
  279.             }
  280.  
  281.  
  282.                 for(m=0;m<Casillas_existentes;m++){
  283.  
  284.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  285.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  286.                     if(ArrayPiezasNegrasRecto.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true){//ESTE CODIGO ES PARA COMPROBAR QUE HAY TORRE O DAMA BLANCA ATACANDO, QUE ES LO QUE NOS INTERESA EN LAS DIAGONALES, SI NO SE ACTIVARIA EL ESTATICO POR CUALQUIER PIEZA, DE AHI QUE BUSQUE LAS LETRAS CORRESPONDIENTES A ESA PIEZA
  287.                         console.log("He encontrado una pieza enemiga negra")
  288.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  289.                         break;
  290.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  291.                         HayPiezaNegraEntreMediasInofensiva = 1;
  292.                     }
  293.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  294.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  295.                         NumeroDePiezasInterpuestas++;
  296.                     }
  297.                 }
  298.  
  299.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  300.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  301.  
  302.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  303.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k]) == 0){
  304.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  305.                                     Elegir_Array_Piezas_guardadas[k][4] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  306.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  307.                                 }
  308.                             }
  309.                         }
  310.                        
  311.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  312.  
  313.                        
  314.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  315.  
  316.     //////////////////////RECTO 5 ///////////////////////// NUEVO EN 2019
  317.  
  318.     //////////////////////RECTO 6 ///////////////////////// NUEVO EN 2019
  319.  
  320.             FilaReyTodo6 = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  321.  
  322.             contador_cuenta_casillas = 0;  
  323.             Casillas_existentes = 0;   
  324.  
  325.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  326.                 contador_cuenta_casillas++;
  327.  
  328.                 if( (ArrayPiezasNegrasRecto.includes(($('#'+(Elegir_EscaqueRey+Array_Multiplo_1[m])+' img').attr("id_1"))) &&
  329.                     ( [7,15,23,31,39,47,55,63].includes(Elegir_EscaqueRey+Array_Multiplo_1[m]) == 1  ) ) ||
  330.  
  331.  
  332.                     ((Array_Multiplo_1[m]+Elegir_EscaqueRey<=63) && (FilaReyTodo6 == (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_1[m])).parent().attr('id'))) || m == 0)))  {
  333.  
  334.                         Casillas_existentes++;
  335.                         Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_1[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  336.                     }
  337.             }
  338.  
  339.  
  340.             for(m=0;m<Casillas_existentes;m++){
  341.  
  342.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  343.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  344.                     if(ArrayPiezasNegrasRecto.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true){//ESTE CODIGO ES PARA COMPROBAR QUE HAY TORRE O DAMA BLANCA ATACANDO, QUE ES LO QUE NOS INTERESA EN LAS DIAGONALES, SI NO SE ACTIVARIA EL ESTATICO POR CUALQUIER PIEZA, DE AHI QUE BUSQUE LAS LETRAS CORRESPONDIENTES A ESA PIEZA
  345.                         console.log("He encontrado una pieza enemiga negra")
  346.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  347.                         break;
  348.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  349.                         HayPiezaNegraEntreMediasInofensiva = 1;
  350.                     }
  351.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  352.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  353.                         NumeroDePiezasInterpuestas++;
  354.                     }
  355.                 }
  356.  
  357.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  358.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  359.  
  360.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  361.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k]) == 0){
  362.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  363.                                     Elegir_Array_Piezas_guardadas[k][5] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  364.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  365.                                 }
  366.                             }
  367.                         }
  368.                        
  369.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  370.  
  371.                        
  372.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  373.  
  374.     //////////////////////RECTO 6 ///////////////////////// NUEVO EN 2019
  375.  
  376.     //////////////////////RECTO 7 ///////////////////////// NUEVO EN 2019
  377.  
  378.             FilaReyTodo7 = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  379.  
  380.             contador_cuenta_casillas = 0;  
  381.             Casillas_existentes = 0;   
  382.  
  383.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  384.                 contador_cuenta_casillas++;
  385.  
  386.                 if(((Array_Multiplo_8_Neg[m]+Elegir_EscaqueRey<=63) && (FilaReyTodo7-(contador_cuenta_casillas)) == (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_8_Neg[m])).parent().attr('id'))) &&
  387.                     (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_8_Neg[m])).parent().attr('id'))) == ((Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_8_Neg[m-1])).parent().attr('id')))-1) ||
  388.                     m == 0))  {
  389.                         Casillas_existentes++;
  390.                         Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_8_Neg[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  391.                     }
  392.             }
  393.  
  394.  
  395.                 for(m=0;m<Casillas_existentes;m++){
  396.  
  397.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  398.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  399.                     if(ArrayPiezasNegrasRecto.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true){//ESTE CODIGO ES PARA COMPROBAR QUE HAY TORRE O DAMA BLANCA ATACANDO, QUE ES LO QUE NOS INTERESA EN LAS DIAGONALES, SI NO SE ACTIVARIA EL ESTATICO POR CUALQUIER PIEZA, DE AHI QUE BUSQUE LAS LETRAS CORRESPONDIENTES A ESA PIEZA
  400.                         console.log("He encontrado una pieza enemiga negra")
  401.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  402.                         break;
  403.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  404.                         HayPiezaNegraEntreMediasInofensiva = 1;
  405.                     }
  406.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  407.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  408.                         NumeroDePiezasInterpuestas++;
  409.                     }
  410.                 }
  411.  
  412.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  413.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  414.  
  415.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  416.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k]) == 0){
  417.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  418.                                     Elegir_Array_Piezas_guardadas[k][6] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  419.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  420.                                 }
  421.                             }
  422.                         }
  423.                        
  424.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  425.  
  426.                        
  427.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  428.  
  429.     //////////////////////RECTO 7 ///////////////////////// NUEVO EN 2019
  430.  
  431.     //////////////////////RECTO 8 ///////////////////////// NUEVO EN 2019
  432.  
  433.             FilaReyTodo8 = Number($('#'+Elegir_EscaqueRey).parent().attr('id'));
  434.  
  435.             contador_cuenta_casillas = 0;  
  436.             Casillas_existentes = 0;   
  437.  
  438.             for(var m=0;m<7;m++){  //QUE BUSQUE EN TODA LA DIAGONAL INCLUYENDO TODOS LOS COLORES PARA VER(CUANTAS CASILLAS EXISTEN FISICAMENTE) SI EN ESA DIAGONAL HAY UNA PIEZA RIVAL, Y , ASI, PONER LA PIEZA NEGRA EN ESTATICO PORQUE ESTA TAPANDO.
  439.                 contador_cuenta_casillas++;
  440.  
  441.                 if(((Array_Multiplo_1_Neg[m]+Elegir_EscaqueRey<=63) && (FilaReyTodo8 == (Number($('#'+(Elegir_EscaqueRey+Array_Multiplo_1_Neg[m])).parent().attr('id'))) || m == 0)))  {
  442.  
  443.                         Casillas_existentes++;
  444.                         Casillas_existentes_array[m] = Elegir_EscaqueRey + Array_Multiplo_1_Neg[m]; // AQUI TENGO CUALES SON, SIN SABER QUÉ HAY DENTRO.
  445.                     }
  446.             }
  447.  
  448.                 for(m=0;m<Casillas_existentes;m++){
  449.  
  450.                     //SI ES BLANCA, LA SIGUIENTE DE ARRIBA MAS PROX, SERA LA ESTATICA
  451.                     if($('#'+(Casillas_existentes_array[m])+' img').length != 0) // SI HAY PIEZA (SI NO DA ERROR)
  452.                     if(ArrayPiezasNegrasRecto.includes($('#'+(Casillas_existentes_array[m])+' img').attr("id_1")) == true){
  453.  
  454.                         console.log("He encontrado una pieza enemiga negra")
  455.                         PuedoPonerEstatico = 1; // ENTRO EN EL FOR DE BAJO PARA PONER ESTATICO, SI NO, NI HACE FALTA, NO HAY NADA.
  456.                         break;
  457.  
  458.                     } else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Color_Contrario[k]) == 0){
  459.                         HayPiezaNegraEntreMediasInofensiva = 1;
  460.                     }
  461.                      else if($('#'+(Casillas_existentes_array[m])+' img').attr("id").search(Mismo_Color[k]) == 0){
  462.                         $('#'+Casillas_existentes_array[m]).children().attr('estatico', '0');
  463.                         NumeroDePiezasInterpuestas++;
  464.                     }
  465.                 }
  466.  
  467.                 if(PuedoPonerEstatico == 1 && NumeroDePiezasInterpuestas < 2 && HayPiezaNegraEntreMediasInofensiva == 0 ){ // ENTRO AQUI SI HAY PIEZA BLANCA ESTORBANDO EN LA DIAGONAL
  468.                         for(var l=m-1;l>=0;l--){ // SE BUSCA HACIA ARRIBA LA MAS PROXIMA
  469.  
  470.                             if($('#'+(Casillas_existentes_array[l])+' img').length != 0){
  471.                                 if($('#'+(Casillas_existentes_array[l])+' img').attr("id").search(Mismo_Color[k]) == 0){
  472.                                     $('#'+Casillas_existentes_array[l]).children().attr('estatico', '1');
  473.                                     Elegir_Array_Piezas_guardadas[k][7] = $('#'+Casillas_existentes_array[l]+' img') // GUARDO LA PIEZA EN ESTA VARIALBE PARA DESPUES DECIR QUE SI NO ESTA TAPANDO AL REY SE QUEDE EN 0, SI NO, PASARÁ QUE SE QUEDARÁ CON EL 1 SIEMPRE.
  474.                                     break; // PARA QUE LA PRIMERA PIEZA SEA LA ESTATICA Y YA ESTA
  475.                                 }
  476.                             }
  477.                         }
  478.                        
  479.                 } NumeroDePiezasInterpuestas = 0; Casillas_existentes_array = [];
  480.  
  481.                        
  482.                 m_elegida = undefined; PuedoPonerEstatico = 0; HayPiezaNegraEntreMediasInofensiva = 0;
  483.  
  484.     }
  485.     //////////////////////RECTO 8 ///////////////////////// NUEVO EN 2019
  486.  
  487.  
  488.  
  489.  
  490.  
  491.  
  492.  
  493.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement