Advertisement
Guest User

Untitled

a guest
Nov 26th, 2014
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. /*
  2. * To change this template, choose Tools | Templates
  3. * and open the template in the editor.
  4. */
  5. package oop.asg04;
  6.  
  7. import java.awt.*;
  8. import javax.swing.*;
  9.  
  10. import java.util.*;
  11. import java.awt.event.*;
  12. import javax.swing.event.*;
  13.  
  14. import java.awt.Toolkit;
  15.  
  16. public class JBrainTetris extends JTetris {
  17.  
  18. protected DefaultBrain brain = new DefaultBrain();
  19. protected Brain.Move bestMove = new Brain.Move();
  20. protected JCheckBox brainMode;
  21. public static int check;
  22.  
  23. public JBrainTetris(int pixels) {
  24. super(pixels);
  25. }
  26.  
  27. public JComponent createControlPanel()
  28. {
  29. JPanel panel = (JPanel) super.createControlPanel();
  30.  
  31. panel.add(new JLabel("Brain:"));
  32. brainMode = new JCheckBox("Brain active");
  33. panel.add(brainMode);
  34. return panel;
  35. }
  36.  
  37.  
  38. public void tick(int verb) {
  39. if (brainMode.isSelected()) {
  40. if(check != count) {
  41. board.undo();
  42. bestMove = brain.bestMove(board, currentPiece, board.getHeight(), bestMove);
  43. check = count;
  44. }
  45.  
  46. if(!currentPiece.equals(bestMove.piece)) {
  47. super.tick(ROTATE);
  48. }
  49. else if (currentX > bestMove.x) super.tick(LEFT);
  50. else if (currentX < bestMove.x) super.tick(RIGHT);
  51.  
  52. super.tick(verb);
  53. }
  54.  
  55. else super.tick(verb);
  56. }
  57.  
  58.  
  59.  
  60. public static void main (String[] args)
  61. {
  62. JBrainTetris tetris = new JBrainTetris(16);
  63. JFrame frame = JBrainTetris.createFrame(tetris);
  64. frame.setVisible(true);
  65. check = 0;
  66. }
  67.  
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement