Cmd2
|
00001 from cmd import Cmd 00002 # quitting 00003 00004 class Pirate(Cmd): 00005 gold = 3 00006 def do_loot(self, arg): 00007 'Seize booty from a passing ship.' 00008 self.gold += 1 00009 def do_drink(self, arg): 00010 '''Drown your sorrrows in rrrum. 00011 00012 drink [n] - drink [n] barrel[s] o' rum.''' 00013 try: 00014 self.gold -= int(arg) 00015 except: 00016 if arg: 00017 print('''What's "{0}"? I'll take rrrum.'''.format(arg)) 00018 self.gold -= 1 00019 def precmd(self, line): 00020 self.initial_gold = self.gold 00021 return line 00022 def postcmd(self, stop, line): 00023 if self.gold != self.initial_gold: 00024 print('Now we gots {0} doubloons' 00025 .format(self.gold)) 00026 if self.gold < 0: 00027 print("Off to debtorrr's prison.") 00028 stop = True 00029 return stop 00030 def do_quit(self, arg): 00031 print("Quiterrr!") 00032 return True 00033 00034 pirate = Pirate() 00035 pirate.cmdloop()