X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=TODO;h=6abcb59866ad0c68ac07bac9f51b669acfa3d59f;hb=5535c509ebeba58eaa7a521a923fa3c6fa59ca6c;hp=777e9419c8a1d3c08f53eafe7a657ba9a9625b58;hpb=53074fb1eab1088d829a9a3f5aa02797a6fd540e;p=open-adventure.git diff --git a/TODO b/TODO index 777e941..6abcb59 100644 --- a/TODO +++ b/TODO @@ -1,9 +1,21 @@ = Open Adventure TODO = -* Find the extra 5 treasures. +The FORTRANish mess that once was is now mostly idiomatic C. Some issues +remain to be cleaned up: -* Make more regression tests from walkthroughs. +* 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. + +* Remaining unstructured gotos in playermove() and do_command(). The goto L12 + in playermove() is particularly horrible, jumping backwards into the + middle of a loop. + +* 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 is nasty. -* Translate the FORTRANish mess to actual C. -* Inline the database so the code doesn't need an external file.