RPG de turno desenvolvido em Java como projeto prático para explorar os quatro pilares da Programação Orientada a Objetos.
Aplicar na prática os conceitos de POO desenvolvendo um jogo de RPG com sistema de combate por turnos, inventário e missões.
Classes abstratas definem o molde sem implementação completa:
Personagem→ base de todos os heróisInimigos→ base de todos os inimigosItem→ base de todos os itens
Subclasses herdam e especializam o comportamento da classe pai:
Guerreiro,Mago,Arqueiro→ extendsPersonagemGoblin,Orc→ extendsInimigosArma,Pocao→ extendsItem
O mesmo método se comporta diferente em cada classe:
atacar()→ cada herói ataca de um jeitohabilidadeEspecial()→ cada herói tem sua habilidade únicausar()→ cada item tem seu efeito diferente
Atributos privados protegidos por getters e setters:
- Ninguém acessa
vida,danooudefesadiretamente setVida()garante que a vida nunca ultrapasse o máximosettersprotegidos só permitem que subclasses alterem atributos
src/
├── Interfaces/
│ ├── Combatente.java → contrato de combate
│ └── Missoes.java → contrato de missões
├── Entities/
│ ├── personagens/
│ │ ├── Personagem.java → classe abstrata base
│ │ ├── Guerreiro.java → golpe duplo
│ │ ├── Mago.java → tempestade arcana (consome mana)
│ │ └── Arqueiro.java → crítico aleatório 30%
│ ├── Inimigos/
│ │ ├── Inimigos.java → classe abstrata base
│ │ ├── Goblin.java → ataque duplo
│ │ └── Orc.java → fúria
│ └── itens/
│ ├── Item.java → classe abstrata base
│ ├── Arma.java → aumenta dano
│ ├── Pocao.java → restaura vida
│ └── Inventario.java → lista genérica com Generics
└── Utilities/
├── PersonagemFactory.java → criação de personagens
├── MissaoCombate.java → missões com recompensa
└── SistemaDeCombate.java → lógica de turnos
| Classe | Vida | Dano | Defesa | Habilidade Especial |
|---|---|---|---|---|
| Guerreiro | 120 | 50 | 25 | Golpe Duplo |
| Mago | 70 | 40 | 15 | Tempestade Arcana |
| Arqueiro | 70 | 30 | 13 | Chuva de Flechas |
| Inimigo | Vida | Dano | Defesa | Habilidade |
|---|---|---|---|---|
| Goblin | 50 | 20 | 2 | Ataque Duplo |
| Orc | 80 | 35 | 20 | Fúria |
| Item | Tipo | Efeito |
|---|---|---|
| Poção de Vida | Cura | Restaura 50 de vida |
| Espada Reforçada | Arma | +10 de dano |
- Clone o repositório
git clone https://github.com/Kaylu1/RpgDeTurno.git- Abra no IntelliJ IDEA
- Execute o arquivo
Main.java - Digite o nome do seu personagem
- Escolha sua classe e batalhe!
- Java 21
- IntelliJ IDEA
- Git & GitHub