- Funcionalidades
- Tecnologias Utilizadas
- Como Executar o Projeto
- Estrutura do Projeto
- Licença
- 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 (Se desejar): Exibição do estado atual do tabuleiro no terminal para visualização do jogo.
- Interface Gráfica (GUI): Interface de usuário visualmente interativa utilizando a biblioteca JavaFX.
Linguagem: Java
Plataforma: JDK (Java Development Kit) 11 ou superior
Framework de UI : JavaFX
Gestor de Dependências: Maven (Apenas para utilizar o 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/
│ ├── gui/
│ │ ├── chess-gui.css
│ │ ├── ChessGUI.java
│ │ └── GuiLauncher.java
│ ├── 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
├── pom.xml
├── README.md
└── README_en.md
Este projeto está licenciado sob a Licença MIT. Veja o arquivo para mais detalhes.