🧙 Duelo de Magos
Un mago ataca un escudo energético con hechizos cuyo daño depende de su rango
Escala del Proyecto
Descripción General
El más pequeño de los ejercicios del portafolio y el primero de la serie: una práctica de condicionales, funciones y bucles de la asignatura de Programación.
El programa pide la edad del mago, la convierte con try/except — 100
años por defecto si falla la conversión — y lo clasifica en
Aprendiz (menos de 30), Hechicero (30 a 99) o
Archimago (100 o más). La función poderBase() traduce
ese rango a 5, 8 o 10 puntos de poder.
Luego simula dos turnos contra un escudo de 15 puntos de energía: en el primero
lanza fuego, con daño poder // 2, y en el segundo un
rayo, con daño poder // 3. Ambos con guardas para que
ni el daño ni la energía puedan ser negativos. Al final informa de si el escudo
aguantó o cayó.
Tecnologías Utilizadas
Python
try / except
for
División entera
Docstrings
Mecánica del Ejercicio
- Clasificación por edad: Aprendiz (<30), Hechicero (30-99), Archimago (≥100).
- Poder base según rango: 5 para el aprendiz, 8 para el hechicero, 10 para el archimago.
- Escudo con 15 puntos de energía inicial.
- Turno 1 — fuego: daño igual a
poder_base // 2. - Turno 2 — rayo: daño igual a
poder_base // 3. - Guardas: el daño nunca es negativo y la energía del escudo nunca baja de cero.
- Resumen final con edad, rango, poder base, energía restante y si el escudo resistió o fue destruido.
Qué Aprendí
- Que una función que recibe la clasificación y devuelve el poder es más clara que
una cadena de
ifrepartida por el programa. - Que la división entera tiene consecuencias: con un aprendiz de
poder 5, el rayo hace
5 // 3 = 1de daño. Es un resultado correcto y sorprendente hasta que lo calculas. - Que hay que proteger cada valor por separado, porque un daño válido puede seguir dejando la energía en negativo si no lo compruebas después.
- Que un
forde dos iteraciones con unifdentro para diferenciar los turnos es más limpio que escribir el mismo bloque dos veces. - Que este ejercicio es el punto de partida de Duelo de Dragones, donde la misma estructura crece a dos participantes, entrenamiento, aserciones y un bucle de combate abierto.
Mi Rol
Autor del ejercicio. Práctica individual de la asignatura de Programación.
Estado del Proyecto
Ejercicio académico completado en su versión 0.1, disponible en el repositorio de apuntes.
Código y Enlaces
Ruta dentro del repositorio: Ejercicios/EJ -
CLASE/0111-EJ-codigo-Magia.py