Java Reference
In-Depth Information
r.clear();
return true
;
r.clear();
return false
;
}
public int
computeScore(Square r)
{
if
(r.hasValue())
{
return
0;
if
(winsWithNextMove( r ,
'o'
))
{
return
4;
if
(winsWithNextMove( r ,
))
{
'x'
return
3;
return
2;
}
public boolean
isGameOver ()
{
if
(wins(
'o'
))
{
JOptionPane . showMessageDialog(
this
,
"I win!"
);
initBoard() ;
return true
;
if
(wins(
'x'
))
{
JOptionPane . showMessageDialog(
this
,
"You win!"
);
initBoard() ;
return true
;
if
(isBoardFull ())
{
JOptionPane . showMessageDialog(
this
,
"It's a tie!"
);
initBoard() ;
return true
;
return false
;
}
public boolean
isBoardFull ()
{
for
(Square r : squares)
{
if
(! r . hasValue () )
{
return false
;
}
return true
;
}
class
MyMouseListener
extends
MouseAdapter
{
public void
mousePressed (MouseEvent e )
{
for
(Square r : squares)
{
if
(r . contains(e. getPoint ()))
{
if
(! r . hasValue() )
{
r . placeCharacter(
'x'
);
repaint () ;