X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=TODO;h=58197760316e0d4f749b41d3cb1b71959e6879f0;hb=a368e2a8b820cdf08ef127fad85096bdfbd7e788;hp=6abcb59866ad0c68ac07bac9f51b669acfa3d59f;hpb=04db8370752c6600b05d2059f8a15d1340d380fd;p=open-adventure.git diff --git a/TODO b/TODO index 6abcb59..5819776 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. +* Remaining unstructured gotos in do_command(). -* 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 program is still pretty much typeless. Some attempt has been + made to introduce semantic types, but the job is barely started. -* 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: FILL VASE while it's on the ground next to you; + 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.