174 |
|
public synchronized void actionPerformed(ActionEvent e) { |
175 |
|
toggleDemoMode(); |
176 |
|
updateStatus(); |
177 |
– |
|
177 |
|
}}); |
178 |
|
|
179 |
|
undoButton.addActionListener(new ActionListener() { |
561 |
|
return Player.Illegal; |
562 |
|
} |
563 |
|
|
564 |
< |
|
566 |
< |
// place a tile without taking opponent tiles |
564 |
> |
/** Places a tile without taking opponent tiles. */ |
565 |
|
public void occupy(Player player, int row, int col) { |
566 |
|
long m = 1L << (row + col * RANKS); |
567 |
|
long nm = ~m; |
585 |
|
green_ &= nm; |
586 |
|
} |
587 |
|
|
588 |
< |
// place a tile, taking all adjacent tiles of opponent |
588 |
> |
/** Places a tile, taking all adjacent tiles of opponent. */ |
589 |
|
public void take(Player player, int row, int col) { |
590 |
|
int k = row + col * RANKS; |
591 |
|
long dest = 1L << k; |