
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@202 72836036-5685-4462-b002-a69064685172
33 lines
813 B
Java
33 lines
813 B
Java
package jrummikub.model;
|
|
|
|
import jrummikub.util.Pair;
|
|
|
|
import static jrummikub.model.StoneTray.Direction.*;
|
|
|
|
/** Class managing a {@link Player}'s {@link Stone}s */
|
|
public class Hand extends StoneTray<Stone> implements IHand {
|
|
|
|
@Override
|
|
protected Pair<Position, Direction> fixInvalidDrop(Stone stone, Position pos,
|
|
Direction dir) {
|
|
float x = pos.getX();
|
|
float y = pos.getY();
|
|
|
|
if (x >= 0 && x <= 13) {
|
|
return null;
|
|
}
|
|
if (x < 0) {
|
|
if (y == 0) {
|
|
return new Pair<Position, Direction>(new Position(0, 0), RIGHT);
|
|
} else {
|
|
return new Pair<Position, Direction>(new Position(13, 0), LEFT);
|
|
}
|
|
} else {
|
|
if (y == 0) {
|
|
return new Pair<Position, Direction>(new Position(0, 1), RIGHT);
|
|
} else {
|
|
return new Pair<Position, Direction>(new Position(13, 1), LEFT);
|
|
}
|
|
}
|
|
}
|
|
}
|