ameliorations: code + options
This commit is contained in:
		
							
								
								
									
										261
									
								
								PJ1_Morpion/Morpion.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										261
									
								
								PJ1_Morpion/Morpion.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,261 @@
 | 
			
		||||
import javax.swing.*;
 | 
			
		||||
import java.awt.*;
 | 
			
		||||
import java.awt.event.*;
 | 
			
		||||
 | 
			
		||||
public class Morpion extends JFrame
 | 
			
		||||
{
 | 
			
		||||
  private JButton box1, box2, box3, box4, box5, box6, box7, box8, box9, replay;
 | 
			
		||||
  private int size = 250, player = 0, i, csJouee[] = { 0,0,0,0,0,0,0,0,0 };
 | 
			
		||||
  private Color coulWin = new Color(250,164,1), coulBase = new Color(0,0,0); // orange, noir
 | 
			
		||||
  
 | 
			
		||||
  public static void main(String[] args) {
 | 
			
		||||
    new Morpion();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  public Morpion()
 | 
			
		||||
  {
 | 
			
		||||
  	Color coul1 = new Color(206,206,206); // Argent
 | 
			
		||||
  	Color coul2 = new Color(76,166,107); // vert clair
 | 
			
		||||
 | 
			
		||||
    // on configure la fenetre
 | 
			
		||||
    this.setSize(760, 835);
 | 
			
		||||
    this.setLocation(500, 150);
 | 
			
		||||
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 | 
			
		||||
    Dimension minSize = new Dimension(300, 150);
 | 
			
		||||
    this.setMinimumSize(minSize);
 | 
			
		||||
    this.setLayout(null);
 | 
			
		||||
 | 
			
		||||
    Clicklistener click = new Clicklistener();
 | 
			
		||||
 | 
			
		||||
    box1 = new JButton("");
 | 
			
		||||
    box2 = new JButton("");
 | 
			
		||||
    box3 = new JButton("");
 | 
			
		||||
    box4 = new JButton("");
 | 
			
		||||
    box5 = new JButton("");
 | 
			
		||||
    box6 = new JButton("");
 | 
			
		||||
    box7 = new JButton("");
 | 
			
		||||
    box8 = new JButton("");
 | 
			
		||||
    box9 = new JButton("");
 | 
			
		||||
    replay = new JButton("Restart");
 | 
			
		||||
    box1.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box2.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box3.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box4.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box5.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box6.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box7.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box8.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    box9.setFont(new Font("Montserrat", Font.BOLD, 100));
 | 
			
		||||
    replay.setFont(new Font("Montserrat", Font.BOLD, 20));
 | 
			
		||||
    box1.setBackground(coul2);
 | 
			
		||||
    box2.setBackground(coul1);
 | 
			
		||||
    box3.setBackground(coul2);
 | 
			
		||||
    box4.setBackground(coul1);
 | 
			
		||||
    box5.setBackground(coul2);
 | 
			
		||||
    box6.setBackground(coul1);
 | 
			
		||||
    box7.setBackground(coul2);
 | 
			
		||||
    box8.setBackground(coul1);
 | 
			
		||||
    box9.setBackground(coul2);
 | 
			
		||||
    box1.setSize(size,size);
 | 
			
		||||
    box2.setSize(size,size);
 | 
			
		||||
    box2.setLocation(size,0);
 | 
			
		||||
    box3.setSize(size,size);
 | 
			
		||||
    box3.setLocation(size*2,0);
 | 
			
		||||
    box4.setSize(size,size);
 | 
			
		||||
    box4.setLocation(0,size);
 | 
			
		||||
    box5.setSize(size,size);
 | 
			
		||||
    box5.setLocation(size,size);
 | 
			
		||||
    box6.setSize(size,size);
 | 
			
		||||
    box6.setLocation(size*2,size);
 | 
			
		||||
    box7.setSize(size,size);
 | 
			
		||||
    box7.setLocation(0,size*2);
 | 
			
		||||
    box8.setSize(size,size);
 | 
			
		||||
    box8.setLocation(size,size*2);
 | 
			
		||||
    box9.setSize(size,size);
 | 
			
		||||
    box9.setLocation(size*2,size*2);
 | 
			
		||||
    replay.setSize(140,30);
 | 
			
		||||
    replay.setLocation(size*3-150,size*3+10);
 | 
			
		||||
    box1.addActionListener(click);
 | 
			
		||||
    box2.addActionListener(click);
 | 
			
		||||
    box3.addActionListener(click);
 | 
			
		||||
    box4.addActionListener(click);
 | 
			
		||||
    box5.addActionListener(click);
 | 
			
		||||
    box6.addActionListener(click);
 | 
			
		||||
    box7.addActionListener(click);
 | 
			
		||||
    box8.addActionListener(click);
 | 
			
		||||
    box9.addActionListener(click);
 | 
			
		||||
    replay.addActionListener(click);
 | 
			
		||||
    this.add(box1);
 | 
			
		||||
    this.add(box2);
 | 
			
		||||
    this.add(box3);
 | 
			
		||||
    this.add(box4);
 | 
			
		||||
    this.add(box5);
 | 
			
		||||
    this.add(box6);
 | 
			
		||||
    this.add(box7);
 | 
			
		||||
    this.add(box8);
 | 
			
		||||
    this.add(box9);
 | 
			
		||||
    this.add(replay);
 | 
			
		||||
 | 
			
		||||
    this.setVisible(true); 
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  private class Clicklistener implements ActionListener
 | 
			
		||||
  {
 | 
			
		||||
    public void actionPerformed(ActionEvent e)
 | 
			
		||||
    {
 | 
			
		||||
      if (e.getSource() == box1 && csJouee[0] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box1.setText("X");
 | 
			
		||||
          csJouee[0] = 1;
 | 
			
		||||
        } else { box1.setText("O"); csJouee[0] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
        
 | 
			
		||||
      if (e.getSource() == box2 && csJouee[1] == 0) 
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box2.setText("X");
 | 
			
		||||
          csJouee[1] = 1;
 | 
			
		||||
        } else { box2.setText("O"); csJouee[1] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (e.getSource() == box3 && csJouee[2] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box3.setText("X");
 | 
			
		||||
          csJouee[2] = 1;
 | 
			
		||||
        } else { box3.setText("O"); csJouee[2] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
        
 | 
			
		||||
      if (e.getSource() == box4 && csJouee[3] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box4.setText("X");
 | 
			
		||||
          csJouee[3] = 1;
 | 
			
		||||
        } else { box4.setText("O"); csJouee[3] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (e.getSource() == box5 && csJouee[4] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box5.setText("X");
 | 
			
		||||
          csJouee[4] = 1;
 | 
			
		||||
        } else { box5.setText("O"); csJouee[4] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
        
 | 
			
		||||
      if (e.getSource() == box6 && csJouee[5] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box6.setText("X");
 | 
			
		||||
          csJouee[5] = 1;
 | 
			
		||||
        } else { box6.setText("O"); csJouee[5] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (e.getSource() == box7 && csJouee[6] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box7.setText("X");
 | 
			
		||||
          csJouee[6] = 1;
 | 
			
		||||
        } else { box7.setText("O"); csJouee[6] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
      
 | 
			
		||||
      if (e.getSource() == box8 && csJouee[7] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box8.setText("X");
 | 
			
		||||
          csJouee[7] = 1;
 | 
			
		||||
        } else { box8.setText("O"); csJouee[7] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (e.getSource() == box9 && csJouee[8] == 0)
 | 
			
		||||
      {
 | 
			
		||||
        if (player%2 == 0) {
 | 
			
		||||
          box9.setText("X");
 | 
			
		||||
          csJouee[8] = 1;
 | 
			
		||||
        } else { box9.setText("O"); csJouee[8] = 2; }
 | 
			
		||||
        player++;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (e.getSource() == replay) 
 | 
			
		||||
      {
 | 
			
		||||
        player = 0;
 | 
			
		||||
        for (i=0;i<csJouee.length;i++) {
 | 
			
		||||
          csJouee[i] = 0;
 | 
			
		||||
        }
 | 
			
		||||
        box1.setText("");
 | 
			
		||||
        box2.setText("");
 | 
			
		||||
        box3.setText("");
 | 
			
		||||
        box4.setText("");
 | 
			
		||||
        box5.setText("");
 | 
			
		||||
        box6.setText("");
 | 
			
		||||
        box7.setText("");
 | 
			
		||||
        box8.setText("");
 | 
			
		||||
        box9.setText("");
 | 
			
		||||
        box1.setForeground(coulBase);
 | 
			
		||||
        box2.setForeground(coulBase);
 | 
			
		||||
        box3.setForeground(coulBase);
 | 
			
		||||
        box4.setForeground(coulBase);
 | 
			
		||||
        box5.setForeground(coulBase);
 | 
			
		||||
        box6.setForeground(coulBase);
 | 
			
		||||
        box7.setForeground(coulBase);
 | 
			
		||||
        box8.setForeground(coulBase);
 | 
			
		||||
        box9.setForeground(coulBase);
 | 
			
		||||
      }
 | 
			
		||||
      if (csJouee[0]!=0 && csJouee[0]==csJouee[1] && csJouee[0]==csJouee[2]) {
 | 
			
		||||
        box1.setForeground(coulWin);
 | 
			
		||||
        box2.setForeground(coulWin);
 | 
			
		||||
        box3.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (csJouee[3]!=0 && csJouee[3]==csJouee[4] && csJouee[3]==csJouee[5]) {
 | 
			
		||||
        box4.setForeground(coulWin);
 | 
			
		||||
        box5.setForeground(coulWin);
 | 
			
		||||
        box6.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (csJouee[6]!=0 && csJouee[6]==csJouee[7] && csJouee[6]==csJouee[8]) {
 | 
			
		||||
        box7.setForeground(coulWin);
 | 
			
		||||
        box8.setForeground(coulWin);
 | 
			
		||||
        box9.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (csJouee[0]!=0 && csJouee[0]==csJouee[3] && csJouee[0]==csJouee[6]) {
 | 
			
		||||
        box1.setForeground(coulWin);
 | 
			
		||||
        box4.setForeground(coulWin);
 | 
			
		||||
        box7.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (csJouee[1]!=0 && csJouee[1]==csJouee[4] && csJouee[1]==csJouee[7]) {
 | 
			
		||||
        box2.setForeground(coulWin);
 | 
			
		||||
        box5.setForeground(coulWin);
 | 
			
		||||
        box8.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (csJouee[2]!=0 && csJouee[2]==csJouee[5] && csJouee[2]==csJouee[8]) {
 | 
			
		||||
        box3.setForeground(coulWin);
 | 
			
		||||
        box6.setForeground(coulWin);
 | 
			
		||||
        box9.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (csJouee[0]!=0 && csJouee[0]==csJouee[4] && csJouee[0]==csJouee[8]) {
 | 
			
		||||
        box1.setForeground(coulWin);
 | 
			
		||||
        box5.setForeground(coulWin);
 | 
			
		||||
        box9.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (csJouee[2]!=0 && csJouee[2]==csJouee[4] && csJouee[2]==csJouee[6]) {
 | 
			
		||||
        box3.setForeground(coulWin);
 | 
			
		||||
        box5.setForeground(coulWin);
 | 
			
		||||
        box7.setForeground(coulWin);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user