map loads, but renders tiles incorrectly
[Tsunagari.git] / TODO.txt
blob334857bbed786e328a5a0ec167a74300c4df8f52
1 ITEMS
4 * Remove arbitrary test values inside the code.
5 * Command line interface using popt.
6 * Investigate whether switching from DTDs to Schemas would be worth it.
7 * Sprite doesn't support animations.
8 * Finish Area parsing code, integrate.
10 * Give World::player an Entity descriptor file.
11   What does an Entity descriptor file contain? What is an Entity?
12   ->    Entity is the most complicated descriptor. It will take a while to
13         design. It's the only descriptor with multiple types which are each
14         different. It's possible that each type of entity will require a
15         different DTD.
17 * Avoid window damage when another window moves on top.
18   We have an optimization that makes our window only redraw itself if something
19   in the game world changed. This causes redraw requests when another window is
20   passing over us to be ignored.
22   Gosu might be forked to be explicit about the difference between timer-based
23   redraw requests and ones spawned by window damage.
25 * Rewrite Area parser for TMX format.
26   Though it's a bit more complex, using the TMX map format (XML based) will
27   allow ourselves and our users to edit areas with the excellent Tiled generic
28   map editor.
30 * Area drawing shouldn't use Sprite.
31   Now that the TMX map format handles tilesets, this is especially true.
32   Tilesets were a bit different from Sprites in the first place, and we simply
33   handled them under the Sprite class for convenience, even though this method
34   was a bit hackish. Now that they're defined in full inside the Area
35   descriptor, Area should probably handle them. This means that tiles are no
36   longer Sprites. Area will also handle the tile animations. This should be
37   cleaner in the long run.
39 * Change XML parsers to use node stacks.
40   Stacks are probably cleaner and more sane, and fit well with the structure of
41   an XML document. They will especially improve the parsing of complex formats,
42   such as the TMX map format, with multiple "camel hump" changes in element
43   depth.
45 FINISHED ITEMS
48 X Find a way to pass the error "domain" to XML's error message function.
49   libxml2 provides a userData variable in the validator context.
50   (Fixed on May 28, 2011 in commit cf6bcbe3)
52 X Switch from JSON to XML completely.
53   Although JSON is an expressive less-verbose-than-XML format, after
54   investigating a few JSON parsers, we have decided that none of them are up to
55   our expectations.
56   (Fixed on May 25, 2011 in commit 5e1c08b7)