Este é um projeto de um jogo de xadrez clássico desenvolvido em Java. O objetivo é criar um motor de xadrez funcional com todas as regras padrão, operando inicialmente via console e, futuramente, com uma interface gráfica.
Atenção: Este projeto está atualmente em fase de desenvolvimento. Algumas funcionalidades estão sendo construídas e a versão atual ainda não representa o jogo completo.
- Status do Projeto
- Funcionalidades Atuais
- Roadmap e Próximos Passos
- Tecnologias Utilizadas
- Como Executar o Projeto
- Estrutura do Projeto
- Licença
O projeto encontra-se em fase final de desenvolvimento. Está operando completamente no terminal, e apenas falta a implementação da interface gráfica para que ele esteja completo.
- Estrutura de Tabuleiro: Representação completa de um tabuleiro de xadrez 8x8.
- Design Orientado a Objetos: Cada peça (Peão, Torre, Cavalo, Bispo, Rainha, Rei) é modelada como uma classe distinta, herdando de uma classe base
Peca, o que promove a reutilização e manutenção do código. - Movimentação Completa: Lógica de movimento e captura para todas as peças, de acordo com suas regras fundamentais.
- Regras Complexas: O jogo conta com regras avançadas como en passant, roque, xeque, peças cravadas.
- Condições de Vitória ou Empate: Xeque-Mate, Empate por afogamento, Derrota por desistência.
- Interface de Console: Exibição do estado atual do tabuleiro no terminal para visualização do jogo.
A lista abaixo detalha as funcionalidades críticas que estão planejadas para as próximas versões.
- Interface Gráfica (GUI): Desenvolver uma interface de usuário visualmente interativa utilizando a biblioteca JavaFX para substituir a atual visualização em console.
Linguagem: Java
Plataforma: JDK (Java Development Kit) 11 ou superior
Framework de UI (Planejado): JavaFX
Para compilar e executar este projeto localmente, siga os passos abaixo.
Antes de começar, certifique-se de que você tem o Java Development Kit (JDK) (versão 11 ou mais recente) instalado em sua máquina.
-
Clone o repositório:
git clone https://github.com/xopxee/Chess-Game.git
-
Navegue até o diretório do projeto:
cd Chess-Game -
Compile os arquivos
.javaa partir da raiz do projeto: O comando abaixo compilará todas as classes necessárias, respeitando a estrutura de pacotes.javac src/**/*.java
-
Execute a aplicação: Após a compilação bem-sucedida, execute a classe principal para iniciar o jogo no console.
java src/Main
O código-fonte está organizado de forma a separar as responsabilidades, facilitando o entendimento e a manutenção.
Chess-Game/
├── .idea/
├── src/
│ ├── Tabuleiro/
│ │ ├── Casa.java
│ │ └── Tabuleiro.java
│ ├── pecas/
│ │ ├── Bispo.java
│ │ ├── Cavalo.java
│ │ ├── Peao.java
│ │ ├── Peca.java
│ │ ├── Rainha.java
│ │ ├── Rei.java
│ │ └── Torre.java
│ └── Main.java
├── .gitignore
├── ChessGame.iml
├── LICENSE
├── README.md
└── README_en.md
Este projeto está licenciado sob a Licença MIT. Veja o arquivo para mais detalhes.