= Open Adventure TODO =
-* Use a real pseudorandom-number generator with a seed rather than just
- time-sampling.
+The FORTRANish mess that once was is now mostly idiomatic C. Some issues
+remain to be cleaned up:
-* Add command logging and command log replay. Note that the replay log
- needs to begin with the random-number seed.
+* The remaining shared globals: K, SPK, WD1, WD1X, WD2, WD2X. These are used
+ rather promiscuously to pass around information that ought to be function
+ arguments in a modern language. K and SPK are particular offenders
-* Use that feature to make regression tests from walkthroughs.
+* Remaining unstructured gotos in playermove() and do_command(). The goto L12
+ in playermove() is particularly horrible, jumping backwards into the
+ middle of a loop.
-* Add command-line option to disable all extension features. First
- extension features: (1) Command prompt, (2) initial resource-allocation
- number display suppressed.
+* In playermove(), why doesn't replacing the global motion number K
+ with a passed-in argument work? There's some unobvious information
+ leak here.
+
+* The way return values from handlers such as 2012 trigger side effects
+ based on global state such as K and SPK is nasty.
-* Translate the FORTRANish mess to actual C.
-* Inline the database so the code doesn't need an external file.