53 lines
916 B
Python
53 lines
916 B
Python
from models import Doors
|
|
from views import View
|
|
|
|
class Controller:
|
|
def __init__( self ):
|
|
self.view = View()
|
|
self.name = self.view.get_name()
|
|
self.start()
|
|
|
|
def start( self ):
|
|
|
|
selected = int( self.view.display_doors() )
|
|
self.doors = Doors( selected, self.name )
|
|
|
|
self.host_twist()
|
|
|
|
return True
|
|
|
|
def host_twist( self ):
|
|
|
|
message =""
|
|
|
|
for i in range( 1, 4 ):
|
|
|
|
if i == self.doors.selected:
|
|
message += "[ X ] "
|
|
elif i == self.doors.open_door:
|
|
message += "[ Goat ] "
|
|
else:
|
|
message += "[ " + str(i) + " ] "
|
|
other_selection = i
|
|
|
|
selection = self.view.host_twist( message )
|
|
|
|
if selection:
|
|
self.doors.selected = other_selection
|
|
self.doors.switch = True
|
|
return self.out_come()
|
|
|
|
def out_come( self ):
|
|
if self.doors.out_come():
|
|
do = self.view.winner()
|
|
else:
|
|
do = self.view.loser()
|
|
|
|
if do == 'n':
|
|
exit()
|
|
|
|
return self.start()
|
|
return True
|
|
|
|
Controller()
|