#!/usr/bin/python
# coding: utf-8

"""
Los Dos
Nick Montfort
Traducción del inglés americano por Carlos León <cleon@fdi.ucm.es>

Copyright 2011-2015 Nick Montfort and Carlos León

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. This file is offered as-is,
without any warranty.

Versión en JavaScript: http://nickm.com/2/los_dos.html
29 de julio de 2018: Cumple con Python 2/3 al agregar paréntesis
"""

from random import choice
from time import sleep

comienzo = [
'Desde su silla de juez se acerca a la silla de los acusados',
'Al aproximarse al cajero, mira a la persona encargada de cobrar',
'Deja de lavar la ropa y se le acerca mientras juega con sus juguetes',
'Al salir de clase, llama a la puerta del despacho',
'Aunque vive en la calle, se gira hacia la persona que está en el ' + \
    'mostrador de la librería',
'Desde su coche llama a la persona que cruza la calle',
'Tras separarse del resto del equipo de rescate, encuentra a la '+ \
    'persona extraviada'
]

verbo_directo = [
'abofetea',
'desafía',
'reconoce superior',
'abraza'
]

verbo_indirecto = [
'sermonea',
'ruega',
'confiesa todo',
'pide consejo',
'pide ayuda',
'expresa su simpatía'
]

final = [
'Se sienten mejor tras una buena llantina',
'Rezan codo con codo',
'Esperan en silencio',
'Rompen a reír',
'Sus malos modales se enfrentan',
'Quien mejores intenciones tenía acaba con su propósito frustrado',
'Seis años después, no recuerdan el incidente',
'Quien tenía el poder en un principio acaba triunfando',
'Quien parecía perder en un principio acaba ganando',
'Han aprendido algo'
]

while True:
    lalo = choice(['la', 'lo'])
    (verbo, pronombre) = choice([(verbo_directo, lalo),
        (verbo_directo, lalo), (verbo_indirecto, 'le'),
        (verbo_indirecto, 'le'), (verbo_indirecto, 'le')])
    print('\n' + choice(comienzo) + '.\n' + choice(['Él', 'Ella']) +
        ' ' + pronombre + ' ' + choice(verbo) + '.' + '\n' +
        choice(final) + '.')
    sleep(4)
