Prevent hang on ill-formed torpedo command.
[super-star-trek.git] / sst.py
diff --git a/sst.py b/sst.py
index 1fdcbd6564e479d55f648f4c76558fba5851b28a..12f1bad0900bffbfc751773126266268ac1a3351 100755 (executable)
--- a/sst.py
+++ b/sst.py
@@ -176,7 +176,7 @@ class Coord:
         s = Coord()
         if self.i == 0:
             s.i = 0
-        elif s.i < 0:
+        elif self.i < 0:
             s.i = -1
         else:
             s.i = 1
@@ -950,6 +950,7 @@ def movetholian():
         game.tholian.move(None)
         prout("***Internal error: Tholian in a bad spot.")
         return
+    print("Tholian moving from %s to %s" % (game.tholian.location, tid))
     # do nothing if we are blocked
     if game.quad[tid.i][tid.j] not in ('.', '#'):
         return
@@ -1737,7 +1738,11 @@ def torps():
             proutn(_("Number of torpedoes to fire- "))
             continue        # Go back around to get a number
         else: # key == "IHREAL"
-            n = scanner.int()
+            try:
+                n = scanner.int()
+            except TypeError:
+                huh()
+                return
             if n <= 0: # abort command
                 scanner.chew()
                 return