X-Git-Url: https://jxself.org/git/?p=super-star-trek.git;a=blobdiff_plain;f=sst.py;h=e2bf5c378288421101bbd0fdce810982e122e7e0;hp=f76f1a2f27b395e0c25b91201dc3878eca53d09a;hb=8f11332df97a3f1888aa0c8859ab7e178b9e298c;hpb=9779950a2d6f131308dd98b36316d3d3f5097458 diff --git a/sst.py b/sst.py index f76f1a2..e2bf5c3 100755 --- a/sst.py +++ b/sst.py @@ -159,8 +159,10 @@ class Quadrant: class Page: def __init__(self): self.stars = None - self.starbase = None + self.starbase = False self.klingons = None + def __repr__(self): + return "<%s,%s,%s>" % (self.klingons, self.starbase, self.stars) def fill2d(size, fillfun): "Fill an empty list in 2D." @@ -1028,7 +1030,7 @@ def randdevice(): return None # we should never get here def collision(rammed, enemy): - "Collision handling fot rammong events." + "Collision handling for rammong events." prouts(_("***RED ALERT! RED ALERT!")) skip(1) prout(_("***COLLISION IMMINENT.")) @@ -1179,8 +1181,8 @@ def torpedo(origin, bearing, dispersion, number, nburst): game.state.baseq = filter(lambda x: x != game.quadrant, game.state.baseq) game.quad[w.i][w.j] = '.' game.base.invalidate() - game.state.galaxy[game.quadrant.i][game.quadrant.j].starbase -= 1 - game.state.chart[game.quadrant.i][game.quadrant.j].starbase -= 1 + game.state.galaxy[game.quadrant.i][game.quadrant.j].starbase = False + game.state.chart[game.quadrant.i][game.quadrant.j].starbase = False game.state.basekl += 1 newcnd() return None @@ -5435,10 +5437,14 @@ def setup(): game.instar = 0 for i in range(GALSIZE): for j in range(GALSIZE): - k = randrange(1, QUADSIZE**2/10+1) + # Can't have more stars per quadrant than fit in one decimal digit, + # if we do the chart representation will break. + k = randrange(1, min(10, QUADSIZE**2/10)) game.instar += k game.state.galaxy[i][j].stars = k # Locate star bases in galaxy + if game.idebug: + prout("=== Allocating %d bases" % game.inbase) for i in range(game.inbase): while True: while True: @@ -5461,6 +5467,8 @@ def setup(): prout("=== Saving base #%d, close to #%d" % (i, j)) if not contflag: break + if game.idebug: + prout("=== Placing base #%d in quadrant %s" % (i, w)) game.state.baseq.append(w) game.state.galaxy[w.i][w.j].starbase = game.state.chart[w.i][w.j].starbase = True # Position ordinary Klingon Battle Cruisers