Package chesstrainer.util

Examples of chesstrainer.util.ESquare


    @Override
    public void mouseReleased(MouseEvent e) {
        dragging = false;
        mouseX = e.getX();
        mouseY = e.getY();
        ESquare sq = getSquare(mouseX, mouseY);
        if (draggingSquare == sq) {
            for (IBoardListener listener : listeners) {
                listener.boardClicked(sq, e.getButton());
            }
            Main.LOG.log(Level.INFO, "Board clicked: {0}", sq.name());
        } else {
            for (IBoardListener listener : listeners) {
                listener.boardDragged(draggingSquare, sq, e.getButton());
            }
            Main.LOG.log(Level.INFO, "Board dragged: {0} to {1}", new Object[]{draggingSquare.name(), sq.name()});
        }
        repaint();
    }
View Full Code Here


        }
        return false;
    }
   
    public static boolean isInCheck(CPosition position) {
        ESquare kingSquare = null;
        ESide side = position.getSideToMove();
       
        for (ESquare s : position.getPosition().keySet()) {
            if (side == ESide.BLACK && position.get(s) == EPiece.WK) {
                kingSquare = s;
View Full Code Here

       
        String[] pieces = fen.split(" ");
       
        // pos
        String[] ranks = pieces[0].split("/");
        ESquare sq;
        EPiece piece;
       
        for (int i = 0; i < 8; i++) {
           
            int rank = 7 - i;
View Full Code Here

    }
   
    public String getFEN() {
        String fen = "";
       
        ESquare sq;
        EPiece piece;
        for (int rank = 7; rank >= 0; rank--) {
            int empty = 0;
           
            for (int file = 0; file < 8; file++) {
View Full Code Here

            } else {
                return new CMove(ESquare.e8, ESquare.c8);
            }
        }
       
        ESquare to = null;
        Set<CMove> moves = position.getMoves();
        CMove move;
        EPiece piece;
        EPiece promotion = null;
       
View Full Code Here

    }
   
    private static Set<CMove> getBishopMoves(CPosition position, ESquare square) {
        Set<CMove> moves = new HashSet<>();
        ESide side = position.get(square).getSide();
        ESquare s;
       
        s = square;
        while (s.nw() != null) {
            s = s.nw();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
            } else {
                break;
            }
        }
       
        s = square;
        while (s.ne() != null) {
            s = s.ne();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
            } else {
                break;
            }
        }
       
        s = square;
        while (s.se() != null) {
            s = s.se();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
            } else {
                break;
            }
        }
       
        s = square;
        while (s.sw() != null) {
            s = s.sw();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
View Full Code Here

    }
   
    private static Set<CMove> getRookMoves(CPosition position, ESquare square) {
        Set<CMove> moves = new HashSet<>();
        ESide side = position.get(square).getSide();
        ESquare s;
       
        s = square;
        while (s.n() != null) {
            s = s.n();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
            } else {
                break;
            }
        }
       
        s = square;
        while (s.e() != null) {
            s = s.e();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
            } else {
                break;
            }
        }
       
        s = square;
        while (s.s() != null) {
            s = s.s();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
            } else {
                break;
            }
        }
       
        s = square;
        while (s.w() != null) {
            s = s.w();
            if (position.get(s) == null) {
                moves.add(new CMove(square, s));
            } else if (position.get(s).getSide() != side) {
                moves.add(new CMove(square, s));
                break;
View Full Code Here

            }
            if (position.get(square.knight8()) == EPiece.WN) {
                return true;
            }
           
            ESquare s = square;
            while (s.nw() != null && position.get(s.nw()) == null) {
                s = s.nw();
            }
            if (position.get(s.nw()) == EPiece.WB
                    || position.get(s.nw()) == EPiece.WQ) {
                return true;
            }
           
            s = square;
            while (s.ne() != null && position.get(s.ne()) == null) {
                s = s.ne();
            }
            if (position.get(s.ne()) == EPiece.WB
                    || position.get(s.ne()) == EPiece.WQ) {
                return true;
            }
           
            s = square;
            while (s.se() != null && position.get(s.se()) == null) {
                s = s.se();
            }
            if (position.get(s.se()) == EPiece.WB
                    || position.get(s.se()) == EPiece.WQ) {
                return true;
            }
           
            s = square;
            while (s.sw() != null && position.get(s.sw()) == null) {
                s = s.sw();
            }
            if (position.get(s.sw()) == EPiece.WB
                    || position.get(s.sw()) == EPiece.WQ) {
                return true;
            }
           
            s = square;
            while (s.n() != null && position.get(s.n()) == null) {
                s = s.n();
            }
            if (position.get(s.n()) == EPiece.WR
                    || position.get(s.n()) == EPiece.WQ) {
                return true;
            }
           
            s = square;
            while (s.e() != null && position.get(s.e()) == null) {
                s = s.e();
            }
            if (position.get(s.e()) == EPiece.WR
                    || position.get(s.e()) == EPiece.WQ) {
                return true;
            }
           
            s = square;
            while (s.s() != null && position.get(s.s()) == null) {
                s = s.s();
            }
            if (position.get(s.s()) == EPiece.WR
                    || position.get(s.s()) == EPiece.WQ) {
                return true;
            }
           
            s = square;
            while (s.w() != null && position.get(s.w()) == null) {
                s = s.w();
            }
            if (position.get(s.w()) == EPiece.WR
                    || position.get(s.w()) == EPiece.WQ) {
                return true;
            }
        } else {
            if (position.get(square.nw()) == EPiece.BP) {
                return true;
            }
            if (position.get(square.ne()) == EPiece.BP) {
                return true;
            }
           
            if (position.get(square.n()) == EPiece.BK) {
                return true;
            }
            if (position.get(square.ne()) == EPiece.BK) {
                return true;
            }
            if (position.get(square.e()) == EPiece.BK) {
                return true;
            }
            if (position.get(square.se()) == EPiece.BK) {
                return true;
            }
            if (position.get(square.s()) == EPiece.BK) {
                return true;
            }
            if (position.get(square.sw()) == EPiece.BK) {
                return true;
            }
            if (position.get(square.w()) == EPiece.BK) {
                return true;
            }
            if (position.get(square.nw()) == EPiece.BK) {
                return true;
            }
           
            if (position.get(square.knight1()) == EPiece.BN) {
                return true;
            }
            if (position.get(square.knight2()) == EPiece.BN) {
                return true;
            }
            if (position.get(square.knight3()) == EPiece.BN) {
                return true;
            }
            if (position.get(square.knight4()) == EPiece.BN) {
                return true;
            }
            if (position.get(square.knight5()) == EPiece.BN) {
                return true;
            }
            if (position.get(square.knight6()) == EPiece.BN) {
                return true;
            }
            if (position.get(square.knight7()) == EPiece.BN) {
                return true;
            }
            if (position.get(square.knight8()) == EPiece.BN) {
                return true;
            }
           
            ESquare s = square;
            while (s.nw() != null && position.get(s.nw()) == null) {
                s = s.nw();
            }
            if (position.get(s.nw()) == EPiece.BB
                    || position.get(s.nw()) == EPiece.BQ) {
                return true;
            }
           
            s = square;
            while (s.ne() != null && position.get(s.ne()) == null) {
                s = s.ne();
            }
            if (position.get(s.ne()) == EPiece.BB
                    || position.get(s.ne()) == EPiece.BQ) {
                return true;
            }
           
            s = square;
            while (s.se() != null && position.get(s.se()) == null) {
                s = s.se();
            }
            if (position.get(s.se()) == EPiece.BB
                    || position.get(s.se()) == EPiece.BQ) {
                return true;
            }
           
            s = square;
            while (s.sw() != null && position.get(s.sw()) == null) {
                s = s.sw();
            }
            if (position.get(s.sw()) == EPiece.BB
                    || position.get(s.sw()) == EPiece.BQ) {
                return true;
            }
           
            s = square;
            while (s.n() != null && position.get(s.n()) == null) {
                s = s.n();
            }
            if (position.get(s.n()) == EPiece.BR
                    || position.get(s.n()) == EPiece.BQ) {
                return true;
            }
           
            s = square;
            while (s.e() != null && position.get(s.e()) == null) {
                s = s.e();
            }
            if (position.get(s.e()) == EPiece.BR
                    || position.get(s.e()) == EPiece.BQ) {
                return true;
            }
           
            s = square;
            while (s.s() != null && position.get(s.s()) == null) {
                s = s.s();
            }
            if (position.get(s.s()) == EPiece.BR
                    || position.get(s.s()) == EPiece.BQ) {
                return true;
            }
           
            s = square;
            while (s.w() != null && position.get(s.w()) == null) {
                s = s.w();
            }
            if (position.get(s.w()) == EPiece.BR
                    || position.get(s.w()) == EPiece.BQ) {
                return true;
            }
        }
        return false;
    }
View Full Code Here

        return Integer.parseInt(score);
    }
   
    private CMove toMove(String move) {
        String[] pieces = move.split("-");
        ESquare from = null, to = null;
       
        for (ESquare s : ESquare.values()) {
            if (pieces[0].contains(s.name())) {
                from = s;
            }
View Full Code Here

TOP

Related Classes of chesstrainer.util.ESquare

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.