X-Git-Url: https://jxself.org/git/?p=super-star-trek.git;a=blobdiff_plain;f=sst.py;h=0bb0a5b430f77751d2d1aed41507fa3aa47ef9a3;hp=599ebc9fae1ef5aa4506004a4520b949fdc7c04b;hb=e70b40fc0698a0d6d3d9eebb102c25064662da94;hpb=da72eafb0c4bb2bb3e012ab8bef4dbaa4fd9a74e diff --git a/sst.py b/sst.py index 599ebc9..0bb0a5b 100755 --- a/sst.py +++ b/sst.py @@ -319,7 +319,9 @@ class Enemy: else: self.location = Coord() self.kdist = self.kavgd = None - game.enemies.remove(self) + # Guard prevents failure on Tholian or thingy + if self in game.enemies: + game.enemies.remove(self) return motion def __repr__(self): return "<%s,%s.%f>" % (self.type, self.location, self.power) # For debugging @@ -2606,7 +2608,7 @@ def wait(): if key != "IHEOL": break proutn(_("How long? ")) - scanner.chew() + scanner.chew() if key != "IHREAL": huh() return @@ -2747,7 +2749,7 @@ def nova(nov): deadkl(neighbor, iquad, neighbor) continue # neighbor loop # Else enemy gets flung by the blast wave - newc = neighbor + neighbor - hits[-1] + newc = neighbor + neighbor - start proutn(crmena(True, iquad, "sector", neighbor) + _(" damaged")) if not newc.valid_sector(): # can't leave quadrant @@ -3431,8 +3433,8 @@ def proutn(proutntline): pause_game() clrscr() # Uncomment this to debug curses problems - if logfp: - logfp.write("#curses: at %s proutn(%s)\n" % ((y, x), repr(proutntline))) + #if logfp: + # logfp.write("#curses: at %s proutn(%s)\n" % ((y, x), repr(proutntline))) curwnd.addstr(proutntline) curwnd.refresh() else: @@ -5953,7 +5955,7 @@ def choose(): game.state.nscrem = game.inscom = (game.skill > SKILL_FAIR) game.state.remtime = 7.0 * game.length game.intime = game.state.remtime - game.state.remkl = game.inkling = 2.0*game.intime*((game.skill+1 - 2*randreal())*game.skill*0.1+.15) + game.state.remkl = game.inkling = int(2.0*game.intime*((game.skill+1 - 2*randreal())*game.skill*0.1+.15)) game.incom = min(MINCMDR, int(game.skill + 0.0625*game.inkling*randreal())) game.state.remres = (game.inkling+4*game.incom)*game.intime game.inresor = game.state.remres @@ -6161,6 +6163,7 @@ commands = [ ("QUIT", 0), ("HELP", 0), ("SCORE", 0), + ("CURSES", 0), ("", 0), ] @@ -6381,6 +6384,9 @@ def makemoves(): helpme() # get help elif cmd == "SCORE": score() # see current score + elif cmd == "CURSES": + game.options |= (OPTION_CURSES | OPTION_COLOR) + iostart() while True: if game.alldone: break # Game has ended