Mercurial > python-cmd2
annotate docs/pycon2010/pirate6.py @ 347:432ccab7c6c8
going to try moving output redirection to outside precmd, postcmd hooks
author | catherine@Drou |
---|---|
date | Tue, 16 Feb 2010 16:33:47 -0500 |
parents | 6fe1e75e3a67 |
children | 8a5bc9f5c28e |
rev | line source |
---|---|
345
6fe1e75e3a67
transcript test wasn't running pre and post cmd hooks
catherine@Drou
parents:
338
diff
changeset
|
1 from cmd2 import Cmd |
337 | 2 # prompts and defaults |
3 | |
4 class Pirate(Cmd): | |
5 gold = 3 | |
6 prompt = 'arrr> ' | |
7 def default(self, line): | |
338 | 8 print('What mean ye by "{0}"?'.format(line)) |
337 | 9 def do_loot(self, arg): |
10 'Drown your sorrrows in rrrum.' | |
11 self.gold += 1 | |
12 def do_drink(self, arg): | |
13 '''Drown your sorrrows in rrrum. | |
14 | |
15 drink [n] - drink [n] barrel[s] o' rum.''' | |
16 try: | |
17 self.gold -= int(arg) | |
18 except: | |
19 if arg: | |
338 | 20 print('''What's "{0}"? I'll take rrrum.'''.format(arg)) |
337 | 21 self.gold -= 1 |
22 def postcmd(self, stop, line): | |
345
6fe1e75e3a67
transcript test wasn't running pre and post cmd hooks
catherine@Drou
parents:
338
diff
changeset
|
23 print('Now we gots {0} doubloons'.format(self.gold)) |
337 | 24 if self.gold < 0: |
338 | 25 print("Off to debtorrr's prrrison. Game overrr.") |
337 | 26 return True |
27 return stop | |
28 def do_quit(self, arg): | |
338 | 29 print("Quiterrr!") |
337 | 30 return True |
31 | |
32 pirate = Pirate() | |
33 pirate.cmdloop() |