Street Fighter Java Edition
Versión educativa y funcional del clásico Street Fighter II, desarrollada con Java SE
Este proyecto pone en práctica muchos de los conceptos clave impartidos a lo largo de los dos cursos del ciclo formativo de DAM, desde estructuras de control hasta hilos y almacenamiento en memoria. El juego está diseñado como aplicación de escritorio, y destaca por su arquitectura clara, uso del paradigma orientado a objetos y simulación de animaciones y lógica de combate entre personajes.
⚙️ Tecnologías y conceptos aplicados
- Java SE (Java Standard Edition)
- Programación orientada a objetos
- Interfaces y herencia
- Estructuras de control (
if,while,for,switch) - Hilos (
Thread) para animaciones, temporizadores y sincronización de movimientos - Eventos de teclado (
KeyListener) para controlar los personajes - Almacenamiento dinámico (
ArrayList,HashMap) - Almacenamiento estático (
arrays) - Carga de recursos: imágenes, música y efectos desde el sistema de archivos
- Patrones de diseño básicos (como MVC adaptado)
- Documentación Javadoc
- Organización del código en paquetes:
modelo,vista,controlador - Gestión de errores (
try-catch) - Gestión de dependencias (
Maven)
🎮 Funcionalidades principales
- Selección de personajes
- Movimiento en tiempo real y ataques
- Control por teclado
- Animaciones con sprites
- Sonido y música de fondo
- Interfaz gráfica personalizada con
JFrame,JPanelyGraphics2D - Colisiones y detección de impactos
- Control de vida y victoria
🚀 Objetivo educativo
Este proyecto está orientado a consolidar los conocimientos adquiridos en el CFGS DAM, integrando temas como:
- Diseño modular de software
- Desarrollo de interfaces gráficas
- Programación multihilo
- Gestión de eventos
- Reutilización de código
- Buenas prácticas de programación