X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=TODO;h=218ca91a68841d75ee690b20fd5d188dbc0c3ed8;hb=95f1548a10d4e64b5494663e25fbe881a80852eb;hp=3e7758d1e1c3e04b4051ee008af8e27b9db606c5;hpb=0599a20f1f56d045d694dab6fba0553799214663;p=open-adventure.git diff --git a/TODO b/TODO index 3e7758d..218ca91 100644 --- a/TODO +++ b/TODO @@ -1,13 +1,17 @@ = 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 log replay. Note that the replay log needs to begin - with the random-number seed. +* The remaining shared globals: K, WD1, WD1X, WD2, WD2X. These are used + rather promiscuously to pass around information that ought to be function + arguments in a modern language. K is a particular offender. -* 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. + +* The way return values from handlers such as 2012 trigger side effects + based on global state is nasty. -* Translate the FORTRANish mess to actual C. -* Inline the database so the code doesn't need an external file.