X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=ypp-sc-tools.db-live.git;a=blobdiff_plain;f=yoweb-scrape;h=8f0bf5647d75251252cb527cdc1f6a8b2a0e1c80;hp=08ebf8eccf131819e41bdf6f007cc7b848d2dffe;hb=0abcf3f9a45f18977593e3d3b8e78cd16b7e155e;hpb=962c79773513b40355ef90a3c0d3e3be041e9498 diff --git a/yoweb-scrape b/yoweb-scrape index 08ebf8e..8f0bf56 100755 --- a/yoweb-scrape +++ b/yoweb-scrape @@ -1,4 +1,32 @@ #!/usr/bin/python +# This is part of ypp-sc-tools, a set of third-party tools for assisting +# players of Yohoho Puzzle Pirates. +# +# Copyright (C) 2009 Ian Jackson +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# +# Yohoho and Puzzle Pirates are probably trademarks of Three Rings and +# are used without permission. This program is not endorsed or +# sponsored by Three Rings. + +copyright_info = ''' +yoweb-scrape is part of ypp-sc-tools Copyright (C) 2009 Ian Jackson +This program comes with ABSOLUTELY NO WARRANTY; this is free software, +and you are welcome to redistribute it under certain conditions. +For details, read the top of the yoweb-scrape file. +''' #---------- setup ---------- @@ -1030,7 +1058,9 @@ def do_ship_aid(args, bu): class KeyBasedSorter: def compar_key_pa(self, pa): - return self.compar_key(pa.pirate_info()) + pi = pa.pirate_info() + if pi is None: return None + return self.compar_key(pi) def lsort_pa(self, l): l.sort(key = self.compar_key_pa) @@ -1099,8 +1129,11 @@ def ship_aid_core(myself, track, displayer, kreader): tbl_s = StringIO() tbl = StandingsTable(tbl_s) - tbl.headings(' %d aboard' % len(aboard), - ' sorted by '+sort.desc()) + + if track.vesselname(): howmany = ' %d aboard' % len(aboard) + else: howmany = '' + + tbl.headings(howmany, ' sorted by '+sort.desc()) for pa in aboard: pi = pa.pirate_info() @@ -1180,8 +1213,7 @@ actions: display modes (for --display) apply to ship-aid: --display=dumb just print new information, scrolling the screen - --display=overwrite use cursor motion, selective clear, etc. to redraw at top -''') + --display=overwrite use cursor motion, selective clear, etc. to redraw at top''') ao = pa.add_option ao('-O','--ocean',dest='ocean', metavar='OCEAN', default=None, help='select ocean OCEAN') @@ -1211,6 +1243,7 @@ display modes (for --display) apply to ship-aid: random.seed() if len(args) < 1: + print >>sys.stderr, copyright_info pa.error('need a mode argument') if opts.debug_fd is not None: