Advertisement
Guest User

Untitled

a guest
Jul 2nd, 2015
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. package lógica;
  2.  
  3. public class Knight extends Piece{
  4.  
  5.  
  6. @Override
  7. public void isValid(Piece[][] spot){
  8. int i;
  9. int j;
  10.  
  11. for(i=0; i<8 ; i++){ //resetar a matriz de validade
  12. for(j=0; j<8; j++){
  13. valid[i][j] = false;
  14. }
  15. }
  16.  
  17. //Movimentos
  18. i= posx+2;
  19. j= posy+1;
  20. if(i>=0 && i<8 && j>=0 && j<8){
  21. if(spot[i][j] == null)
  22. valid[i][j] = true;
  23. else if(spot[i][j].color != color)
  24. valid[i][j] = true;
  25. }
  26.  
  27. i= posx+1;
  28. j= posy+2;
  29. if(i>=0 && i<8 && j>=0 && j<8){
  30. if(spot[i][j] == null)
  31. valid[i][j] = true;
  32. else if(spot[i][j].color != color)
  33. valid[i][j] = true;
  34. }
  35.  
  36. i= posx-2;
  37. j= posy-1;
  38. if(i>=0 && i<8 && j>=0 && j<8){
  39. if(spot[i][j] == null)
  40. valid[i][j] = true;
  41. else if(spot[i][j].color != color)
  42. valid[i][j] = true;
  43. }
  44.  
  45. i= posx-1;
  46. j= posy-2;
  47. if(i>=0 && i<8 && j>=0 && j<8){
  48. if(spot[i][j] == null)
  49. valid[i][j] = true;
  50. else if(spot[i][j].color != color)
  51. valid[i][j] = true;
  52. }
  53.  
  54. i= posx+2;
  55. j= posy-1;
  56. if(i>=0 && i<8 && j>=0 && j<8){
  57. if(spot[i][j] == null)
  58. valid[i][j] = true;
  59. else if(spot[i][j].color != color)
  60. valid[i][j] = true;
  61. }
  62.  
  63. i= posx-2;
  64. j= posy+1;
  65. if(i>=0 && i<8 && j>=0 && j<8){
  66. if(spot[i][j] == null)
  67. valid[i][j] = true;
  68. else if(spot[i][j].color != color)
  69. valid[i][j] = true;
  70. }
  71.  
  72. i= posx-1;
  73. j= posy+2;
  74. if(i>=0 && i<8 && j>=0 && j<8){
  75. if(spot[i][j] == null)
  76. valid[i][j] = true;
  77. else if(spot[i][j].color != color)
  78. valid[i][j] = true;
  79. }
  80.  
  81. i= posx+1;
  82. j= posy-2;
  83. if(i>=0 && i<8 && j>=0 && j<8){
  84. if(spot[i][j] == null)
  85. valid[i][j] = true;
  86. else if(spot[i][j].color != color)
  87. valid[i][j] = true;
  88. }
  89.  
  90. }
  91.  
  92. Knight(int x0, int y0, int cor) {
  93. type = knight;
  94. color = cor;
  95. posx = x0;
  96. posy = y0;
  97. lastMoved = 0;
  98. isMoved = false;
  99. isChecked = false;
  100. movedTwo = false;
  101. }
  102.  
  103. Knight(Knight p){ //construtor de cópia
  104. type = p.type;
  105. color = p.color;
  106. posx = p.posx;
  107. posy = p.posy;
  108. lastMoved = p.lastMoved;
  109. isMoved = p.isMoved;
  110. isChecked = p.isChecked;
  111. movedTwo = p.movedTwo;
  112.  
  113. for(int i=0; i<8; i++){
  114. for(int j=0; j<8; j++){
  115. valid[i][j] = p.valid[i][j];
  116. }
  117. }
  118.  
  119. }
  120. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement