projects
/
super-star-trek.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e571d50
)
Yet more pychecker fixes.
author
Eric S. Raymond
<esr@thyrsus.com>
Tue, 7 Dec 2010 02:38:25 +0000
(21:38 -0500)
committer
Eric S. Raymond
<esr@thyrsus.com>
Tue, 7 Dec 2010 02:38:25 +0000
(21:38 -0500)
sst.py
patch
|
blob
|
history
diff --git
a/sst.py
b/sst.py
index fe04293f10fbbc7c98c28d1292e12016727ee91e..d44032c7e1cfbd771dcc8061473dce3f05640622 100755
(executable)
--- a/
sst.py
+++ b/
sst.py
@@
-363,6
+363,8
@@
class Gamestate:
self.cryprob = 0.0 # probability that crystal will work
self.probe = None # object holding probe course info
self.height = 0.0 # height of orbit around planet
self.cryprob = 0.0 # probability that crystal will work
self.probe = None # object holding probe course info
self.height = 0.0 # height of orbit around planet
+ self.score = 0.0 # overall score
+ self.perdate = 0.0 # rate of kills
self.idebug = False # Debugging instrumentation enabled?
def recompute(self):
# Stas thinks this should be (C expression):
self.idebug = False # Debugging instrumentation enabled?
def recompute(self):
# Stas thinks this should be (C expression):
@@
-726,7
+728,7
@@
def supercommander():
unschedule(FSCMOVE)
return
sc = game.state.kscmdr
unschedule(FSCMOVE)
return
sc = game.state.kscmdr
- for
base in game.state.baseq
:
+ for
(i, base) in enumerate(game.state.baseq)
:
basetbl.append((i, (base - sc).distance()))
if game.state.baseq > 1:
basetbl.sort(lambda x, y: cmp(x[1], y[1]))
basetbl.append((i, (base - sc).distance()))
if game.state.baseq > 1:
basetbl.sort(lambda x, y: cmp(x[1], y[1]))
@@
-1071,7
+1073,7
@@
def torpedo(origin, bearing, dispersion, number, nburst):
if not w.valid_sector():
break
iquad=game.quad[w.i][w.j]
if not w.valid_sector():
break
iquad=game.quad[w.i][w.j]
- tracktorpedo(
origin,
w, step, number, nburst, iquad)
+ tracktorpedo(w, step, number, nburst, iquad)
if iquad=='.':
continue
# hit something
if iquad=='.':
continue
# hit something
@@
-1219,7
+1221,7
@@
def torpedo(origin, bearing, dispersion, number, nburst):
return None
elif iquad == 'T': # Hit a Tholian
h1 = 700.0 + randrange(100) - \
return None
elif iquad == 'T': # Hit a Tholian
h1 = 700.0 + randrange(100) - \
- 1000.0 * (w-origin).distance() * math.fabs(math.sin(bullseye-angle))
+ 1000.0 * (w-origin).distance() * math.fabs(math.sin(bullseye-
track.
angle))
h1 = math.fabs(h1)
if h1 >= 600:
game.quad[w.i][w.j] = '.'
h1 = math.fabs(h1)
if h1 >= 600:
game.quad[w.i][w.j] = '.'
@@
-2175,13
+2177,13
@@
def events():
for ibq in game.state.baseq:
for cmdr in game.state.kcmdr:
if ibq == cmdr and ibq != game.quadrant and ibq != game.state.kscmdr:
for ibq in game.state.baseq:
for cmdr in game.state.kcmdr:
if ibq == cmdr and ibq != game.quadrant and ibq != game.state.kscmdr:
- raise
ibq
+ raise
JumpOut
else:
# no match found -- try later
schedule(FBATTAK, expran(0.3*game.intime))
unschedule(FCDBAS)
continue
else:
# no match found -- try later
schedule(FBATTAK, expran(0.3*game.intime))
unschedule(FCDBAS)
continue
- except
Coord
:
+ except
JumpOut
:
pass
# commander + starbase combination found -- launch attack
game.battle = ibq
pass
# commander + starbase combination found -- launch attack
game.battle = ibq
@@
-2491,7
+2493,7
@@
def nova(nov):
finish(FNOVA)
return
# add in course nova contributes to kicking starship
finish(FNOVA)
return
# add in course nova contributes to kicking starship
- bump += (game.sector-hits[
mm
]).sgn()
+ bump += (game.sector-hits[
-1
]).sgn()
elif iquad == 'K': # kill klingon
deadkl(neighbor, iquad, neighbor)
elif iquad in ('C','S','R'): # Damage/destroy big enemies
elif iquad == 'K': # kill klingon
deadkl(neighbor, iquad, neighbor)
elif iquad in ('C','S','R'): # Damage/destroy big enemies
@@
-2502,7
+2504,7
@@
def nova(nov):
if game.enemies[ll].power <= 0.0:
deadkl(neighbor, iquad, neighbor)
break
if game.enemies[ll].power <= 0.0:
deadkl(neighbor, iquad, neighbor)
break
- newc = neighbor + neighbor - hits[
mm
]
+ newc = neighbor + neighbor - hits[
-1
]
proutn(crmena(True, iquad, "sector", neighbor) + _(" damaged"))
if not newc.valid_sector():
# can't leave quadrant
proutn(crmena(True, iquad, "sector", neighbor) + _(" damaged"))
if not newc.valid_sector():
# can't leave quadrant
@@
-2918,11
+2920,10
@@
def finish(ifin):
def score():
"Compute player's score."
timused = game.state.date - game.indate
def score():
"Compute player's score."
timused = game.state.date - game.indate
- iskill = game.skill
if (timused == 0 or (game.state.remkl + len(game.state.kcmdr) + game.state.nscrem) != 0) and timused < 5.0:
timused = 5.0
if (timused == 0 or (game.state.remkl + len(game.state.kcmdr) + game.state.nscrem) != 0) and timused < 5.0:
timused = 5.0
- perdate = killrate()
- ithperd = 500*perdate + 0.5
+
game.
perdate = killrate()
+ ithperd = 500*
game.
perdate + 0.5
iwon = 0
if game.gamewon:
iwon = 100*game.skill
iwon = 0
if game.gamewon:
iwon = 100*game.skill
@@
-2932,7
+2933,7
@@
def score():
klship = 1
else:
klship = 2
klship = 1
else:
klship = 2
-
i
score = 10*(game.inkling - game.state.remkl) \
+
game.
score = 10*(game.inkling - game.state.remkl) \
+ 50*(game.incom - len(game.state.kcmdr)) \
+ ithperd + iwon \
+ 20*(game.inrom - game.state.nromrem) \
+ 50*(game.incom - len(game.state.kcmdr)) \
+ ithperd + iwon \
+ 20*(game.inrom - game.state.nromrem) \
@@
-2940,7
+2941,7
@@
def score():
- game.state.nromrem \
- badpoints()
if not game.alive:
- game.state.nromrem \
- badpoints()
if not game.alive:
-
i
score -= 200
+
game.
score -= 200
skip(2)
prout(_("Your score --"))
if game.inrom - game.state.nromrem:
skip(2)
prout(_("Your score --"))
if game.inrom - game.state.nromrem:
@@
-2960,7
+2961,7
@@
def score():
(game.inscom - game.state.nscrem, 200*(game.inscom - game.state.nscrem)))
if ithperd:
prout(_("%6.2f Klingons per stardate %5d") %
(game.inscom - game.state.nscrem, 200*(game.inscom - game.state.nscrem)))
if ithperd:
prout(_("%6.2f Klingons per stardate %5d") %
- (perdate, ithperd))
+ (
game.
perdate, ithperd))
if game.state.starkl:
prout(_("%6d stars destroyed by your action %5d") %
(game.state.starkl, -5*game.state.starkl))
if game.state.starkl:
prout(_("%6d stars destroyed by your action %5d") %
(game.state.starkl, -5*game.state.starkl))
@@
-2996,7
+2997,7
@@
def score():
elif game.skill == SKILL_EMERITUS: proutn(_("Emeritus game"))
prout(" %5d" % iwon)
skip(1)
elif game.skill == SKILL_EMERITUS: proutn(_("Emeritus game"))
prout(" %5d" % iwon)
skip(1)
- prout(_("TOTAL SCORE %5d") %
i
score)
+ prout(_("TOTAL SCORE %5d") %
game.
score)
def plaque():
"Emit winner's commemmorative plaque."
def plaque():
"Emit winner's commemmorative plaque."
@@
-3052,8
+3053,8
@@
def plaque():
timestring = time.ctime()
fp.write(_(" This day of %.6s %.4s, %.8s\n\n") %
(timestring+4, timestring+20, timestring+11))
timestring = time.ctime()
fp.write(_(" This day of %.6s %.4s, %.8s\n\n") %
(timestring+4, timestring+20, timestring+11))
- fp.write(_(" Your score: %d\n\n") %
i
score)
- fp.write(_(" Klingons per stardate: %.2f\n") % perdate)
+ fp.write(_(" Your score: %d\n\n") %
game.
score)
+ fp.write(_(" Klingons per stardate: %.2f\n") %
game.
perdate)
fp.close()
# Code from io.c begins here
fp.close()
# Code from io.c begins here
@@
-3347,7
+3348,7
@@
def warble():
#nosound()
pass
#nosound()
pass
-def tracktorpedo(
origin,
w, step, i, n, iquad):
+def tracktorpedo(w, step, i, n, iquad):
"Torpedo-track animation."
if not game.options & OPTION_CURSES:
if step == 1:
"Torpedo-track animation."
if not game.options & OPTION_CURSES:
if step == 1:
@@
-3890,8
+3891,10
@@
def warp(wcourse, involuntary):
twarp = True
if blooey or twarp:
# If time warp or engine damage, check path
twarp = True
if blooey or twarp:
# If time warp or engine damage, check path
- # If it is obstructed, don't do warp or damage
- for m_unused in range(wcourse.moves):
+ # If it is obstructed, don't do warp or damage
+ look = wcourse.moves
+ while look > 0:
+ look -= 1
wcourse.next()
w = wcourse.sector()
if not w.valid_sector():
wcourse.next()
w = wcourse.sector()
if not w.valid_sector():
@@
-4189,7
+4192,7
@@
def mayday():
elif m == 2: proutn(_("2nd"))
elif m == 3: proutn(_("3rd"))
proutn(_(" attempt to re-materialize ") + crmshp())
elif m == 2: proutn(_("2nd"))
elif m == 3: proutn(_("3rd"))
proutn(_(" attempt to re-materialize ") + crmshp())
- game.quad[
ix][iy
]=('-','o','O')[m-1]
+ game.quad[
game.sector.i][game.sector.j
]=('-','o','O')[m-1]
textcolor(RED)
warble()
if randreal() > probf:
textcolor(RED)
warble()
if randreal() > probf:
@@
-4198,13
+4201,13
@@
def mayday():
textcolor(DEFAULT)
curses.delay_output(500)
if m > 3:
textcolor(DEFAULT)
curses.delay_output(500)
if m > 3:
- game.quad[
ix][iy
]='?'
+ game.quad[
game.sector.i][game.sector.j
]='?'
game.alive = False
drawmaps(1)
setwnd(message_window)
finish(FMATERIALIZE)
return
game.alive = False
drawmaps(1)
setwnd(message_window)
finish(FMATERIALIZE)
return
- game.quad[
ix][iy
]=game.ship
+ game.quad[
game.sector.i][game.sector.j
]=game.ship
textcolor(GREEN);
prout(_("succeeds."))
textcolor(DEFAULT);
textcolor(GREEN);
prout(_("succeeds."))
textcolor(DEFAULT);
@@
-4789,7
+4792,7
@@
def attackreport(curt):
def report():
# report on general game status
scanner.chew()
def report():
# report on general game status
scanner.chew()
- s1 =
"" and game.thawed and _("thawed ")
+ s1 =
(game.thawed and _("thawed ")) or ""
s2 = {1:"short", 2:"medium", 4:"long"}[game.length]
s3 = (None, _("novice"), _("fair"),
_("good"), _("expert"), _("emeritus"))[game.skill]
s2 = {1:"short", 2:"medium", 4:"long"}[game.length]
s3 = (None, _("novice"), _("fair"),
_("good"), _("expert"), _("emeritus"))[game.skill]
@@
-5216,6
+5219,7
@@
def freeze(boss):
def thaw():
"Retrieve saved game."
def thaw():
"Retrieve saved game."
+ global game
game.passwd[0] = '\0'
key = scanner.next()
if key == "IHEOL":
game.passwd[0] = '\0'
key = scanner.next()
if key == "IHEOL":