diff options
-rw-r--r-- | engines/neverhood/todo.txt | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/engines/neverhood/todo.txt b/engines/neverhood/todo.txt new file mode 100644 index 0000000000..abf8f27f84 --- /dev/null +++ b/engines/neverhood/todo.txt @@ -0,0 +1,42 @@ +NOTE: +------- +Some of the TODOs should be done AFTER the whole game logic is implemented +else the game disasm and reimplemtation code become even more different +(unless I decide it's ok to do it :) + +TODOs which can be done any time: +----------------------------------- +- Give placeholder stuff (e.g. sub?????, _flag??? etc.) better fitting names +- Use CursorMan for the mouse cursor (instead of using it like a normal sprite) + - This whould make it neccessary to call _system->updateScreen more often else + the mouse movement would be choppy +- Cleanup +- Clean up staticdata structs to look more like the ones in create_neverhood + (e.g. by using template classes etc.) + - Or use a common base class and manage all stuff in one single table and cast stuff accordingly + +TODOs which should be done only after the game logic is finished: +------------------------------------------------------------------- +- Implement clever sprite redrawing code (dirty rectangles, microtiles etc.), only redraw what's neccessary +- Rework sound system (I don't like that SoundResources need to be explicitly initialized in Scene constructors) + - Should be just a handle object which initializes itself + - Play routine should fill the handle so it can be stopped/queried later + - Basically like ScummVM own sound handles +- Rework the resource system + - The current system can be simplified a lot + - Also resource purging needs to be implemented +- RE and implement yet unknown music/sound stuff +- Implement game menus +- Maybe rework organization of files (e.g. put ALL Sprites into one separate file, same with Modules and Scenes) + - This would solve the problem of how to organize stuff which is used several times, and less headers would have to be included + - The move special scenes (SmackerScene) into the scenes file +- Maybe merge CollisionMan with Scene (since it's so far never used independently) + +TODOs which are experimental: +------------------------------- +NOTE: Since they affect the whole game, they really should be only implemented once the full game logic is implemented. +These are nothing more than wild ideas for now, any might never be implemented. +- Use states instead of separate callback methods +- Try to move more stuff to neverhood.dat +- Try to use more template functions instead of manually creating functions + (Can be coupled with the above to move parameters to the dat and only use IDs) |