X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=TODO;h=d98209a5a7182217e2c5c617c1e3a18a704fde51;hb=8b8a3a73c4812af90bdd755c35f6c4e001553872;hp=6abcb59866ad0c68ac07bac9f51b669acfa3d59f;hpb=04db8370752c6600b05d2059f8a15d1340d380fd;p=open-adventure.git diff --git a/TODO b/TODO index 6abcb59..d98209a 100644 --- a/TODO +++ b/TODO @@ -3,19 +3,17 @@ The FORTRANish mess that once was is now mostly idiomatic C. Some issues remain to be cleaned up: -* 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. +* The program is still pretty much typeless. Some attempt has been + made to introduce semantic types, but the job is barely started. -* 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. +* More possible vase tests: + DROP VASE in the Soft Room; DROP VASE in the well house and confirm + that you do/don't get points for it; die while carrying the vase and + confirm that it doesn't break. +We are aware that the lamp currently used as the project logo is a +hurricane lamp, not a proper miner's lamp. Submissions of potential +replacement images would be welcome. +It would be fun to write a script that processes the dungeon YAML +into a DOT graph.