Public feed #381303

Something

public text v1 · immutable
Raw Edit
·published 2007-03-04 19:33 UTC
rendered paste body
/*
 * Mancala
 *
 */

package Mancala;

/**
 * Swing user interface for the Mancala game
 * @author VItaliy Kalandyrets
 */
public class MancalaUI extends javax.swing.JFrame {

    // CLASS CONSTANTS
    
    // CLASS VARIABLES
    
    /**
     * Game associated with this user interface
     */ 
    
    // INSTANCE VARIABLES
//    int d ;
//    int r=0 ;
//    int o=0 ;
//    int index;
//    int j = 0;
    int w,f,d,j,r,o,index;
//   int f;
    String pitnum;   
    private MancalaUI[] pitButton = new MancalaUI[12] ;
    
    private Game game;
    /**
     * Board associated with this user interface
     */
    private Board board;
    /**
     * Array of pit buttons in this user interface
     */
    private javax.swing.JButton pits[] = new javax.swing.JButton[Game.PITS];
    /**
     * Array of kalaha labels in this user interface
     */
    private javax.swing.JLabel kalahas[] = new javax.swing.JLabel[Game.PLAYERS];

    
    // CLASS METHODS
    /** Creates new form MancalaUI */
    public MancalaUI() {
        initComponents();
        pits[0] = pitButton0;
        pits[1] = pitButton1;
        pits[2] = pitButton2;
        pits[3] = pitButton3;
        pits[4] = pitButton4;
        pits[5] = pitButton5;
        pits[6] = pitButton6;
        pits[7] = pitButton7;
        pits[8] = pitButton8;
        pits[9] = pitButton9;
        pits[10] = pitButton10;
        pits[11] = pitButton11;
        kalahas[0] = kalahaLabel0;
        kalahas[1] = kalahaLabel1;
    }
 
    /**
     * Used to test the UI independently of the game
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new MancalaUI().setVisible(true);
            }
        });
    }
     
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // <editor-fold defaultstate="collapsed" desc=" Generated Code ">                          
    private void initComponents() {
        pitButton0 = new javax.swing.JButton();
        pitButton1 = new javax.swing.JButton();
        pitButton2 = new javax.swing.JButton();
        pitButton3 = new javax.swing.JButton();
        pitButton4 = new javax.swing.JButton();
        pitButton5 = new javax.swing.JButton();
        pitButton6 = new javax.swing.JButton();
        pitButton7 = new javax.swing.JButton();
        pitButton8 = new javax.swing.JButton();
        pitButton9 = new javax.swing.JButton();
        pitButton10 = new javax.swing.JButton();
        pitButton11 = new javax.swing.JButton();
        playerLabel0 = new javax.swing.JLabel();
        playerLabel1 = new javax.swing.JLabel();
        kalahaPanel1 = new javax.swing.JPanel();
        kalahaLabel1 = new javax.swing.JLabel();
        kalahaPanel0 = new javax.swing.JPanel();
        kalahaLabel0 = new javax.swing.JLabel();
        messageLabel = new javax.swing.JLabel();
        newGameButton = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("Mancala");
        setBackground(new java.awt.Color(255, 255, 255));
        pitButton0.setBackground(new java.awt.Color(222, 233, 255));
        pitButton0.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton0.setForeground(new java.awt.Color(0, 0, 255));
        pitButton0.setText("40");
        pitButton0.setActionCommand("0");
        pitButton0.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton0.setDefaultCapable(false);
        pitButton0.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton0.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton1.setBackground(new java.awt.Color(222, 233, 255));
        pitButton1.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton1.setForeground(new java.awt.Color(0, 0, 255));
        pitButton1.setText("40");
        pitButton1.setActionCommand("1");
        pitButton1.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton1.setDefaultCapable(false);
        pitButton1.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton2.setBackground(new java.awt.Color(222, 233, 255));
        pitButton2.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton2.setForeground(new java.awt.Color(0, 0, 255));
        pitButton2.setText("40");
        pitButton2.setActionCommand("2");
        pitButton2.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton2.setDefaultCapable(false);
        pitButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton3.setBackground(new java.awt.Color(222, 233, 255));
        pitButton3.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton3.setForeground(new java.awt.Color(0, 0, 255));
        pitButton3.setText("40");
        pitButton3.setActionCommand("3");
        pitButton3.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton3.setDefaultCapable(false);
        pitButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton4.setBackground(new java.awt.Color(222, 233, 255));
        pitButton4.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton4.setForeground(new java.awt.Color(0, 0, 255));
        pitButton4.setText("40");
        pitButton4.setActionCommand("4");
        pitButton4.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton4.setDefaultCapable(false);
        pitButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton5.setBackground(new java.awt.Color(222, 233, 255));
        pitButton5.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton5.setForeground(new java.awt.Color(0, 0, 255));
        pitButton5.setText("40");
        pitButton5.setActionCommand("5");
        pitButton5.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton5.setDefaultCapable(false);
        pitButton5.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton6.setBackground(new java.awt.Color(250, 225, 238));
        pitButton6.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton6.setForeground(new java.awt.Color(148, 0, 77));
        pitButton6.setText("40");
        pitButton6.setActionCommand("6");
        pitButton6.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton6.setDefaultCapable(false);
        pitButton6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton7.setBackground(new java.awt.Color(250, 225, 238));
        pitButton7.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton7.setForeground(new java.awt.Color(148, 0, 77));
        pitButton7.setText("40");
        pitButton7.setActionCommand("7");
        pitButton7.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton7.setDefaultCapable(false);
        pitButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton7.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton8.setBackground(new java.awt.Color(250, 225, 238));
        pitButton8.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton8.setForeground(new java.awt.Color(148, 0, 77));
        pitButton8.setText("40");
        pitButton8.setActionCommand("8");
        pitButton8.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton8.setDefaultCapable(false);
        pitButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton8.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton9.setBackground(new java.awt.Color(250, 225, 238));
        pitButton9.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton9.setForeground(new java.awt.Color(148, 0, 77));
        pitButton9.setText("40");
        pitButton9.setActionCommand("9");
        pitButton9.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton9.setDefaultCapable(false);
        pitButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton9.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton10.setBackground(new java.awt.Color(250, 225, 238));
        pitButton10.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton10.setForeground(new java.awt.Color(148, 0, 77));
        pitButton10.setText("40");
        pitButton10.setActionCommand("10");
        pitButton10.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton10.setDefaultCapable(false);
        pitButton10.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        pitButton11.setBackground(new java.awt.Color(250, 225, 238));
        pitButton11.setFont(new java.awt.Font("Verdana", 1, 36));
        pitButton11.setForeground(new java.awt.Color(148, 0, 77));
        pitButton11.setText("40");
        pitButton11.setActionCommand("11");
        pitButton11.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        pitButton11.setDefaultCapable(false);
        pitButton11.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        pitButton11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pitSelected(evt);
            }
        });

        playerLabel0.setFont(new java.awt.Font("Verdana", 1, 18));
        playerLabel0.setForeground(new java.awt.Color(0, 0, 255));
        playerLabel0.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        playerLabel0.setText("Player 1");

        playerLabel1.setFont(new java.awt.Font("Verdana", 1, 18));
        playerLabel1.setForeground(new java.awt.Color(148, 0, 77));
        playerLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        playerLabel1.setText("Player 2");

        kalahaPanel1.setBackground(new java.awt.Color(250, 225, 238));
        kalahaPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder(new java.awt.Color(148, 0, 77), new java.awt.Color(0, 0, 0)));
        kalahaLabel1.setBackground(new java.awt.Color(250, 225, 238));
        kalahaLabel1.setFont(new java.awt.Font("Verdana", 1, 36));
        kalahaLabel1.setForeground(new java.awt.Color(148, 0, 77));
        kalahaLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        kalahaLabel1.setLabelFor(kalahaPanel1);
        kalahaLabel1.setText("40");

        javax.swing.GroupLayout kalahaPanel1Layout = new javax.swing.GroupLayout(kalahaPanel1);
        kalahaPanel1.setLayout(kalahaPanel1Layout);
        kalahaPanel1Layout.setHorizontalGroup(
            kalahaPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(kalahaLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE)
        );
        kalahaPanel1Layout.setVerticalGroup(
            kalahaPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(kalahaPanel1Layout.createSequentialGroup()
                .addGap(34, 34, 34)
                .addComponent(kalahaLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 70, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(41, Short.MAX_VALUE))
        );

        kalahaPanel0.setBackground(new java.awt.Color(222, 233, 255));
        kalahaPanel0.setBorder(javax.swing.BorderFactory.createEtchedBorder(new java.awt.Color(0, 0, 255), new java.awt.Color(0, 0, 0)));
        kalahaLabel0.setBackground(new java.awt.Color(222, 233, 255));
        kalahaLabel0.setFont(new java.awt.Font("Verdana", 1, 36));
        kalahaLabel0.setForeground(new java.awt.Color(0, 0, 255));
        kalahaLabel0.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        kalahaLabel0.setLabelFor(kalahaPanel0);
        kalahaLabel0.setText("40");

        javax.swing.GroupLayout kalahaPanel0Layout = new javax.swing.GroupLayout(kalahaPanel0);
        kalahaPanel0.setLayout(kalahaPanel0Layout);
        kalahaPanel0Layout.setHorizontalGroup(
            kalahaPanel0Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(kalahaLabel0, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE)
        );
        kalahaPanel0Layout.setVerticalGroup(
            kalahaPanel0Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(kalahaPanel0Layout.createSequentialGroup()
                .addGap(34, 34, 34)
                .addComponent(kalahaLabel0, javax.swing.GroupLayout.PREFERRED_SIZE, 70, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(41, Short.MAX_VALUE))
        );

        messageLabel.setFont(new java.awt.Font("Verdana", 1, 24));
        messageLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        messageLabel.setText("Player 1: Your turn");

        newGameButton.setFont(new java.awt.Font("Verdana", 1, 18));
        newGameButton.setText("New Game");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(messageLabel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 656, Short.MAX_VALUE)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(kalahaPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 15, Short.MAX_VALUE)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(playerLabel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(playerLabel0, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(pitButton11, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(pitButton0, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(16, 16, 16)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                            .addComponent(pitButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(pitButton10, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(16, 16, 16)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                            .addComponent(pitButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(pitButton9, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(16, 16, 16)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                            .addComponent(pitButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(pitButton8, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(21, 21, 21)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                            .addComponent(pitButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(pitButton7, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(16, 16, 16)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                            .addComponent(pitButton6, javax.swing.GroupLayout.DEFAULT_SIZE, 67, Short.MAX_VALUE)
                                            .addComponent(pitButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))))
                                .addGap(16, 16, 16)
                                .addComponent(kalahaPanel0, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(259, 259, 259)
                        .addComponent(newGameButton)))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(23, 23, 23)
                        .addComponent(playerLabel1)
                        .addGap(30, 30, 30)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(pitButton6, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton7, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton8, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton9, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton10, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton11, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(15, 15, 15)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(pitButton0, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(pitButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(34, 34, 34)
                        .addComponent(playerLabel0))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(76, 76, 76)
                        .addComponent(kalahaPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(76, 76, 76)
                        .addComponent(kalahaPanel0, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addGap(34, 34, 34)
                .addComponent(messageLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(16, 16, 16)
                .addComponent(newGameButton, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(34, Short.MAX_VALUE))
        );
        pack();
    }// </editor-fold>                        

    // EVENT HANDLERS
       /**
     * Event handler for all the pitButtons.  Determines which button was pressed and act accordingly.
     * @param evt Event generated when one of the pit buttons is pressed.
     */ 
    private void pitSelected(java.awt.event.ActionEvent evt) {                             
        String pitnumber = evt.getActionCommand();
        index = Integer.parseInt(pitnumber);
        pitnum=pitnumber;
        ConvSeeds(index);
        CaptureOpp();
        
       if(pitnumber=="6"||pitnumber=="7"||pitnumber=="8"||pitnumber=="9"||pitnumber=="10"||pitnumber=="11") {
            showMessage("Player 1: Your turn");
            j = j + w;
            Bdisable1(); }                      
       else  { 
            o = o + w; 
            Bdisable2(); 
            showMessage("Player 2: Your turn"); }
        CheckW(); 
        CheckEnd();                                                 
    }                            
        public int ConvSeeds(int index) {
         String u = pits[index].getText();
         w = Integer.parseInt(u);
         return w;                      }
        
        public int ConvKalahas(int num) {
            String numb = kalahas[num].getText();
            f = Integer.parseInt(numb);
            return f;
        }
        
        public void CheckW() {
            if(ConvKalahas(0)>ConvKalahas(1))
                d = 1;
            else
                d = 2;
        }
        public void CheckEnd() {
             if(ConvSeeds(0)==0&&ConvSeeds(1)==0&&ConvSeeds(2)==0&&ConvSeeds(3)==0&&ConvSeeds(4)==0&&ConvSeeds(5)==0&&ConvSeeds(6)==0&&ConvSeeds(7)==0&&ConvSeeds(8)==0&&ConvSeeds(9)==0&&ConvSeeds(10)==0&&ConvSeeds(11)==0)
             { showMessage("The End, Player "+ d +" won");
                for(int j=0;j<12;j++)
                    pitButton[j].setEnabled(false);}
         }
        
         public void Bdisable1()  {
   //    for(int t=6;t<12;t++) {
   //     pitButton[t].setEnabled(false); }
            pitButton6.setEnabled(false);
            pitButton7.setEnabled(false);
            pitButton8.setEnabled(false);
            pitButton9.setEnabled(false);
            pitButton10.setEnabled(false);
            pitButton11.setEnabled(false);
   //    for(int i=0;i<6;i++)  {
   //     pitButton[i].setEnabled(true);  } 
            pitButton0.setEnabled(true);
            pitButton1.setEnabled(true);
            pitButton2.setEnabled(true);
            pitButton3.setEnabled(true);
            pitButton4.setEnabled(true);
            pitButton5.setEnabled(true); 
            pits[index].setText(String.valueOf(0));
            kalahas[1].setText(String.valueOf(j));   }
     
         public void Bdisable2()  {
            pitButton6.setEnabled(true);
            pitButton7.setEnabled(true);
            pitButton8.setEnabled(true);
            pitButton9.setEnabled(true);
            pitButton10.setEnabled(true);
            pitButton11.setEnabled(true);
            pitButton0.setEnabled(false);
            pitButton1.setEnabled(false);
            pitButton2.setEnabled(false);
            pitButton3.setEnabled(false);
            pitButton4.setEnabled(false);
            pitButton5.setEnabled(false);           
            pits[index].setText(String.valueOf(0));
            kalahas[0].setText(String.valueOf(o));   }
    
         public void BdisableStart()  {
            pitButton6.setEnabled(false);
            pitButton7.setEnabled(false);
            pitButton8.setEnabled(false);
            pitButton9.setEnabled(false);
            pitButton10.setEnabled(false);
            pitButton11.setEnabled(false);
            pitButton0.setEnabled(true);
            pitButton1.setEnabled(true);
            pitButton2.setEnabled(true);
            pitButton3.setEnabled(true);
            pitButton4.setEnabled(true);
            pitButton5.setEnabled(true);              }
        
         public void CaptureOpp()     {
             if(w==0) {
                if(pitnum=="0") {
                    kalahas[0].setText(String.valueOf(ConvSeeds(11)));
                    pits[11].setText(String.valueOf(0)); }
                if(pitnum=="1") {
                    kalahas[0].setText(String.valueOf(ConvSeeds(10)));
                    pits[10].setText(String.valueOf(0)); }
                if(pitnum=="2") {
                    kalahas[0].setText(String.valueOf(ConvSeeds(9)));
                    pits[9].setText(String.valueOf(0)); }
                if(pitnum=="3") {
                    kalahas[0].setText(String.valueOf(ConvSeeds(8)));
                    pits[8].setText(String.valueOf(0)); }
                if(pitnum=="4") {
                    kalahas[0].setText(String.valueOf(ConvSeeds(7)));
                    pits[7].setText(String.valueOf(0)); }
                if(pitnum=="5") {
                    kalahas[0].setText(String.valueOf(ConvSeeds(6)));
                    pits[6].setText(String.valueOf(0)); }
                if(pitnum=="6") {
                    kalahas[1].setText(String.valueOf(ConvSeeds(5)));
                    pits[5].setText(String.valueOf(0)); }
                if(pitnum=="7") {
                    kalahas[1].setText(String.valueOf(ConvSeeds(4)));
                    pits[4].setText(String.valueOf(0)); }
                if(pitnum=="8") {
                    kalahas[1].setText(String.valueOf(ConvSeeds(3)));
                    pits[3].setText(String.valueOf(0)); }
                if(pitnum=="9") {
                    kalahas[1].setText(String.valueOf(ConvSeeds(2)));
                    pits[2].setText(String.valueOf(0)); }
                if(pitnum=="10") {
                    kalahas[1].setText(String.valueOf(ConvSeeds(1)));
                    pits[1].setText(String.valueOf(0)); }
                if(pitnum=="11") {
                    kalahas[1].setText(String.valueOf(ConvSeeds(0)));
                    pits[0].setText(String.valueOf(0)); }
                       }
                                       }

  
    // Variables declaration - do not modify                     
    private javax.swing.JLabel kalahaLabel0;
    private javax.swing.JLabel kalahaLabel1;
    private javax.swing.JPanel kalahaPanel0;
    private javax.swing.JPanel kalahaPanel1;
    private javax.swing.JLabel messageLabel;
    private javax.swing.JButton newGameButton;
    private javax.swing.JButton pitButton0;
    private javax.swing.JButton pitButton1;
    private javax.swing.JButton pitButton10;
    private javax.swing.JButton pitButton11;
    private javax.swing.JButton pitButton2;
    private javax.swing.JButton pitButton3;
    private javax.swing.JButton pitButton4;
    private javax.swing.JButton pitButton5;
    private javax.swing.JButton pitButton6;
    private javax.swing.JButton pitButton7;
    private javax.swing.JButton pitButton8;
    private javax.swing.JButton pitButton9;
    private javax.swing.JLabel playerLabel0;
    private javax.swing.JLabel playerLabel1;
    // End of variables declaration                   
    

    // INSTANCE METHODS
    
    /**
     * Displays a message in the message line
     * @param newmsg Message to be displayed
     */
    public void showMessage(String newmsg) {
        messageLabel.setText(newmsg);
}
    
    /**
     * Show the number of seeds in one of the pits
     * @param index Index of the pit
     * @param seeds Number of seeds in that pit
     */
    public void showPitSeeds(int index, int seeds) {
        pits[index].setText(String.valueOf(seeds));
    }
    
    /**
     * Show the number of seeds in one of the kalahas
     * @param index Index (0-1) of that kalaha
     * @param seeds Number of seeds in that kalaha
     */
    public void showKalahaSeeds(int index, int seeds) {
        kalahas[index].setText(String.valueOf(seeds));
    }

    /**
     * Set the game property: Mancala game associated with this user interface
     * @param game New value for game
     */
    public void setGame(Game game) {
        this.game = game;
    }

    /**
     * Set the board property: board associated with this user interface
     * @param board New value for board
     */
    public void setBoard(Board board) {
        this.board = board;
    }
    
    
}