Advertisement
pseudocreator

TicTacToe (swing + awg)#works

May 18th, 2014
487
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 9.42 KB | None | 0 0
  1. WORKS, tested last time 18.04.2014 with JavaSE-1.7; (serbian language)
  2.  
  3. //CREATE PACKAGE TicTacToe2, after that
  4. //CREATE GameApplet.java CLASS and copy this
  5.  
  6. package TicTacToe2;
  7. import java.applet.Applet;
  8. import java.awt.BasicStroke;
  9. import java.awt.Color;
  10.  
  11. import java.awt.Graphics;
  12. import java.awt.Graphics2D;
  13. import java.awt.event.ActionEvent;
  14. import java.awt.event.ActionListener;
  15. import java.awt.event.KeyEvent;
  16. import java.awt.event.MouseEvent;
  17. import java.awt.event.MouseListener;
  18. import java.awt.event.WindowEvent;
  19. import java.awt.event.WindowListener;
  20.  
  21.  
  22. import javax.swing.JButton;
  23. import javax.swing.JDialog;
  24. import javax.swing.JFrame;
  25. import javax.swing.JOptionPane;
  26.  
  27. public class GameApplet extends Applet
  28. implements MouseListener, ActionListener, WindowListener
  29. {
  30.     /**
  31.          *
  32.          */
  33.         private static final long serialVersionUID = 1L;
  34.         JFrame f;
  35.     int flag = 1;
  36.     int n;
  37.     int m;
  38.     int i = 0;
  39.     static int bug = 0;
  40.     char[] ch = new char[9];
  41.     JButton first;
  42.     JButton second;
  43.     String s1 = "";
  44.    
  45.     @SuppressWarnings("deprecation")
  46.         public GameApplet()
  47.     {
  48.         this.f = new JFrame("Tic Tac Toe");
  49.         this.first = new JButton("RESETUJ");
  50.         this.second = new JButton("IZADJI");
  51.         this.f.add(this.first);
  52.         this.f.add(this.second);
  53.         this.f.addWindowListener(this);
  54.         this.f.getContentPane().setBackground(Color.cyan);
  55.         this.f.setLayout(null);
  56.         this.f.setVisible(true);
  57.         this.f.setSize(820, 600);
  58.         this.first.setBounds(700, 500, 90, 60);
  59.         this.second.setBounds(600, 500, 90, 60);
  60.        
  61.         this.f.addMouseListener(this);
  62.         for (this.i = 0; this.i < 9; this.i += 1)
  63.         this.ch[this.i] = 'B';
  64.         this.first.addActionListener(this);
  65.         this.second.addActionListener(this);
  66.        
  67.         String message = "Kliknite negde na OK \n    \nkako biste zapoceli igru. \n";
  68.        
  69.         JOptionPane pane = new JOptionPane(message);
  70.         JDialog dialog = pane.createDialog(new JFrame(), "Dilaog");
  71.         dialog.show();
  72.         Graphics g = this.f.getGraphics();
  73.         g.drawLine(200, 0, 200, 600);
  74.         g.drawLine(400, 0, 400, 600);
  75.         g.drawLine(0, 200, 600, 200);
  76.         g.drawLine(0, 400, 600, 400);
  77.         g.drawLine(600, 0, 600, 600);
  78.     }
  79.    
  80.     public void keyPressed(KeyEvent k)
  81.     {
  82.         System.out.print("");
  83.     }
  84.    
  85.     public void keyTyped(KeyEvent k) {
  86.         this.s1 += k.getKeyChar();
  87.     }
  88.    
  89.     public void keyReleased(KeyEvent k) {
  90.         System.out.print("");
  91.     }
  92.    
  93.     public void actionPerformed(ActionEvent ae)
  94.     {
  95.         if (ae.getSource() == this.first)
  96.         {
  97.             this.f.setVisible(false);
  98.             bug = 0;
  99.             new GameApplet();
  100.         }
  101.         if (ae.getSource() == this.second)
  102.         {
  103.             System.exit(0);
  104.         }
  105.     }
  106.    
  107.     public void windowClosing(WindowEvent de)
  108.     {
  109.     System.exit(0); }
  110.    
  111.     public void windowOpened(WindowEvent de) { }
  112.    
  113.     public void windowClosed(WindowEvent de) { }
  114.    
  115.     public void windowActivated(WindowEvent de) { }
  116.    
  117.     public void windowDeactivated(WindowEvent de) { }
  118.    
  119.     public void windowIconified(WindowEvent de) { }
  120.    
  121.     public void windowDeiconified(WindowEvent de) {  }
  122.    
  123.     public void mouseClicked(MouseEvent e) { Graphics2D g2;
  124.         Graphics g = this.f.getGraphics();
  125.         g.drawLine(200, 0, 200, 600);
  126.         g.drawLine(400, 0, 400, 600);
  127.         g.drawLine(0, 200, 600, 200);
  128.         g.drawLine(0, 400, 600, 400);
  129.         g.drawLine(600, 0, 600, 600);
  130.         this.flag -= 1;
  131.         int x = e.getX();
  132.         int y = e.getY();
  133.         if (this.flag == 1)
  134.         {
  135.             if ((x < 200) && (y < 200)) { this.m = 0; this.n = 0; this.ch[0] = 'R'; }
  136.             if ((x > 200) && (x < 400) && (y < 200)) { this.m = 200; this.n = 0; this.ch[1] = 'R'; }
  137.             if ((x > 400) && (x < 600) && (y < 200)) { this.m = 400; this.n = 0; this.ch[2] = 'R'; }
  138.             if ((x < 200) && (y > 200) && (y < 400)) { this.m = 0; this.n = 200; this.ch[3] = 'R'; }
  139.             if ((x > 200) && (x < 400) && (y > 200) && (y < 400)) { this.m = 200; this.n = 200; this.ch[4] = 'R'; }
  140.             if ((x > 400) && (x < 600) && (y > 200) && (y < 400)) { this.m = 400; this.n = 200; this.ch[5] = 'R'; }
  141.             if ((x < 200) && (y > 400) && (y < 600)) { this.m = 0; this.n = 400; this.ch[6] = 'R'; }
  142.             if ((x > 200) && (x < 400) && (y > 400) && (y < 600)) { this.m = 200; this.n = 400; this.ch[7] = 'R'; }
  143.             if ((x > 400) && (x < 600) && (y > 400) && (y < 600)) { this.m = 400; this.n = 400; this.ch[8] = 'R'; }
  144.             g.setColor(new Color(70, 70, 70));
  145.             g2 = (Graphics2D)g;
  146.             g2.setStroke(new BasicStroke(10.0F));
  147.             g.drawOval(this.m + 10, this.n + 10, 159, 159);
  148.         }
  149.        
  150.         if (this.flag == 0)
  151.         {
  152.             if ((x < 200) && (y < 200)) { this.m = 0; this.n = 20; this.ch[0] = 'P'; }
  153.             if ((x > 200) && (x < 400) && (y < 200)) { this.m = 200; this.n = 20; this.ch[1] = 'P'; }
  154.             if ((x > 400) && (x < 600) && (y < 200)) { this.m = 400; this.n = 20; this.ch[2] = 'P'; }
  155.             if ((x < 200) && (y > 200) && (y < 400)) { this.m = 0; this.n = 200; this.ch[3] = 'P'; }
  156.             if ((x > 200) && (x < 400) && (y > 200) && (y < 400)) { this.m = 200; this.n = 200; this.ch[4] = 'P'; }
  157.             if ((x > 400) && (x < 600) && (y > 200) && (y < 400)) { this.m = 400; this.n = 200; this.ch[5] = 'P'; }
  158.             if ((x < 200) && (y > 400) && (y < 600)) { this.m = 0; this.n = 400; this.ch[6] = 'P'; }
  159.             if ((x > 200) && (x < 400) && (y > 400) && (y < 600)) { this.m = 200; this.n = 400; this.ch[7] = 'P'; }
  160.             if ((x > 400) && (x < 600) && (y > 400) && (y < 600)) { this.m = 400; this.n = 400; this.ch[8] = 'P'; }
  161.             g2 = (Graphics2D)g;
  162.             g2.setStroke(new BasicStroke(10.0F));
  163.             g.setColor(new Color(70, 70, 70));
  164.             g.drawLine(this.m + 10, this.n + 13, this.m + 169, this.n + 164);
  165.             g.drawLine(this.m + 169, this.n + 10, this.m + 10, this.n + 169);
  166.             this.flag += 2;
  167.             @SuppressWarnings("unused")
  168.                         String message = "#neka poruka";
  169.         }
  170.        
  171.         for (this.i = 0; this.i < 3; this.i += 1)
  172.         {
  173.             if ((this.ch[this.i] != 'B') &&
  174.             (this.ch[(this.i + 3)] == this.ch[this.i]) && (this.ch[(this.i + 6)] == this.ch[this.i]))
  175.             {
  176.                 new Board().win();
  177.                 bug = 1;
  178.             }
  179.         }
  180.        
  181.         for (this.i = 0; this.i < 7; this.i += 1)
  182.         {
  183.             if (this.ch[this.i] != 'B')
  184.             {
  185.                 if ((this.ch[this.i] == this.ch[(this.i + 1)]) && (this.ch[this.i] == this.ch[(this.i + 2)]))
  186.                 {
  187.                     new Board().win();
  188.                     bug = 1;
  189.                 }
  190.                 this.i += 2;
  191.             }
  192.             else {
  193.                 this.i += 2;
  194.             }
  195.         }
  196.         if ((this.ch[4] != 'B') && ((
  197.         ((this.ch[0] == this.ch[4]) && (this.ch[4] == this.ch[8])) || ((this.ch[2] == this.ch[4]) && (this.ch[4] == this.ch[6])))))
  198.         {
  199.             new Board().win();
  200.             bug = 1;
  201.         }
  202.        
  203.         for (this.i = 0; (this.i < 9) &&
  204.         (this.ch[this.i] != 'B'); this.i += 1)
  205.         {
  206.             if (this.i == 8)
  207.             {
  208.                 if (bug == 0)
  209.                 new Board().draw();
  210.                 bug = 0;
  211.             }
  212.         }
  213.     }
  214.    
  215.     public void mouseReleased(MouseEvent e)
  216.     {
  217.         System.out.print("");
  218.     }
  219.    
  220.     public void mouseEntered(MouseEvent e)
  221.     {
  222.         System.out.print("");
  223.     }
  224.    
  225.     public void mouseExited(MouseEvent e) {
  226.         System.out.print("");
  227.     }
  228.    
  229.     public void mousePressed(MouseEvent e) {
  230.         System.out.print("");
  231.     }
  232.    
  233.     public static void main(String[] args)
  234.     {
  235.         new GameApplet();
  236.     }
  237. }
  238.  
  239.  
  240.  
  241.  
  242. //CREATE Board.java CLASS and copy this below
  243. package TicTacToe2;
  244.  
  245.  
  246. import java.awt.event.WindowEvent;
  247. import java.awt.event.WindowListener;
  248.  
  249. import javax.swing.JDialog;
  250. import javax.swing.JFrame;
  251. import javax.swing.JOptionPane;
  252.  
  253. class Board  implements WindowListener
  254. {
  255.     @SuppressWarnings("deprecation")
  256.         public void win()
  257.     {
  258.         String message = "Odlicna igra \n    \npobeda \n";
  259.        
  260.         JOptionPane pane = new JOptionPane(message);
  261.         JDialog dialog = pane.createDialog(new JFrame(), "#Dila0g");
  262.         dialog.show();
  263.     }
  264.    
  265.  
  266.         @SuppressWarnings("deprecation")
  267.         public void draw()
  268.     {
  269.         String message = "Igraci rezultat je  \n    \nneresen \n";
  270.        
  271.         JOptionPane pane = new JOptionPane(message);
  272.         JDialog dialog = pane.createDialog(new JFrame(), "Dilaog");
  273.         dialog.show();
  274.     }
  275.    
  276.     public void windowClosing(WindowEvent we)
  277.     {
  278.         System.exit(0);
  279.     }
  280.    
  281.     public void windowOpened(WindowEvent we)
  282.     {
  283.     }
  284.    
  285.     public void windowClosed(WindowEvent we)
  286.     {
  287.     }
  288.    
  289.     public void windowActivated(WindowEvent we)
  290.     {
  291.     }
  292.    
  293.     public void windowDeactivated(WindowEvent we)
  294.     {
  295.     }
  296.    
  297.     public void windowIconified(WindowEvent we)
  298.     {
  299.     }
  300.    
  301.     public void windowDeiconified(WindowEvent we)
  302.     {
  303.     }
  304. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement