El contenido de este tutorial tiene como finalidad poner en práctica diversos conceptos de POO con Python. El proyecto consiste en realizar una serie de mini juegos en los que se pondrán a prueba la lógica, así mismo veremos los temas utilizados al inicio de cada juego.
Que lo disfruten.
REINO DE DRAGONES
Eres un jugador que se encuentra en una tierra de dragones. Los cuales viven en cuevas junto con sus grandes tesoros. Algunos son amigables y compartirán sus tesoros contigo. Otros son malvados y te comerán en cuanto entres a su cueva. Te encuentras frente a dos cuevas, podrás llevarte grandes riquezas o serás devorado?
import random
import time
defmostrarIntroduccion():
print('Estas en una tierra llena de dragones. Frende a ti')
print('hay dos cuevas. En una de ellas, el dragon es generoso y')
print('amigable y compartirá su tesoro contigo. El otro dragón')
print('es codicioso y está hambriento, y te devorará inmediatamente')
print()
defelegirCueva():
cueva = input('A que cueva quieres entrar? (1 o 2): ')
print(cueva)
if (cueva !='1') and (cueva !='2'):
elegirCueva()
else:
return cueva
defexplorarCueva(cuevaElegida):
print('Te aproximas a la cueva ...')
time.sleep(2)
print('Es oscura y espeluznante ...')
time.sleep(2)
print('¡Un gran dragon aparece subitamente frente a ti! Abre sus fauces y ...')
print()
time.sleep(2)
cuevaAmigable = random.randint(1,2)
if cuevaElegida == str(cuevaAmigable):
print('¡Te regala su tesoro!')
else:
print('¡Te engulle de un bocado!')
jugarDeNuevo = 'si'while (jugarDeNuevo == 'si') or (jugarDeNuevo == 's'):
mostrarIntroduccion()
numeroDeCueva = elegirCueva()
explorarCueva(numeroDeCueva)
jugarDeNuevo= input('¿Quieres jugar de nuevo? (si o no) : ')
Exploremos el funcionamiento del código
El modulo random nos dará la función random.randint() y el modulo time nos dará funciones relacionadas con el tiempo
import randomimport time
La siguiente función mostrará la narrativa inicial del juego
defmostrarIntroduccion():#contenido
La siguiente función nos dará a elegir entre 2 opciones (cuevas) hasta que ingresemos 1 o 2 y finalmente retorna la opción elegida
defelegirCueva():#Contenido
La siguiente función inicia con una narrativa donde nos indica que nos vamos aproximando a la cueva
time.sleep(2) es una especie de retardo o delay que hace que el programa espere el tiempo indicado para poder ir al siguiente paso
randint(1,2) nos devolverá un numero al azar entre 1 y 2 y lo almacenará en la variable cuevaAmigable
El ciclo if determina si tendremos éxito o si fracasaremos, si la cueva que elegimos es igual a la respuesta al azar del programa, tendremos el tesoro, de lo contrario, el dragón nos engullirá
defexplorarCueva(cuevaElegida):
print('Te aproximas a la cueva ...')
time.sleep(2)
print('Es oscura y espeluznante ...')
time.sleep(2)
print('¡Un gran dragon aparece subitamente frente a ti! Abre sus fauces y ...')
print()
time.sleep(2)
cuevaAmigable = random.randint(1,2)
if cuevaElegida == str(cuevaAmigable):
print('¡Te regala su tesoro!')
else:
print('¡Te engulle de un bocado!')
El siguiente ciclo while será el encargado de el funcionamiento principal de todo el programa, el cual también nos dará a elegir si queremos volver a iniciar o no
jugarDeNuevo = 'si'while (jugarDeNuevo == 'si') or (jugarDeNuevo == 's'):
mostrarIntroduccion()
numeroDeCueva = elegirCueva()
explorarCueva(numeroDeCueva)
jugarDeNuevo= input('¿Quieres jugar de nuevo? (si o no) : ')
Es simple pero al importar el modulo time y usarlo para que los dialogos tomaran un tiempo para aparecer me hiso sentir parte de la historia.