Fetching contributors…
Cannot retrieve contributors at this time
95 lines (77 sloc) 3.52 KB
Narya Notes -*- mode: outline -*-
* Media framework
Make sure the animation and sprite stuff is general purpose.
Fix all the code that presently loads up tiles from tilesets by id which
should really be loading the tilesets by path.
* General
Remove dependencies of nodemap on miso.
Perhaps provide an application identifier to the resource manager so that
it can cache resource sets in a unique directory in the event that
multiple Narya using applications are run on the same machine.
Make Object{Input|Output}Stream which manages mapping from Streamable
class to two-byte identifier wherein the class name is only transmitted
the first time the class is seen on the stream and is subsequently
identified by the two-byte identifier. The client and server can use these
streams on either end to efficiently transport serializables. They will
need to be reset when the client loses connection. Check to see if
Serializable support already does this (in which case we can just use it
* 6/18/2002
** Hot tileset action
! Refactor ObjectTileSet so that it doesn't have to extends
SwissArmyTileSet, but instead the object information can be supplied as
augmentation to a SwissArmyTileSet or a TrimmedTileSet
- Make component bundling stuff use a short path name for the component
action tile image since we have to put it into the serialized tileset
instance anyway.
** Image vs. BufferedImage
- Sort out the whole Image vs. BufferedImage fiasco in the media package.
We're casting Image objects to BufferedImage objects willy nilly and we
should rearrange things so that we're usually passing around
BufferedImage objects until the time comes to convert them for display
on the screen.
* 6/19/2002
** Virtual media stuff
X Add "keepPathableVisible" or somesuch which like setFollowsPathable will
scroll the screen but will only do so to keep the pathable in the
visible bounds rather than centered.
* 6/21/2002
** Parlor enhancements
- Support rematches and "best two out of three" style play
* 7/24/2002
** Cast enhancements
- Eventually make BundledComponentRepository use ImageManager cache on the
images it loads in ResourceBundleProvider.loadImage
* 9/5/2002
** Character component enhancement
- Add support for component "aliasing" (in the Macintosh sense) whereby
the same image data can be used for multiple character components,
possibly with different (x,y) origins. Perhaps this means that in the
action definition we do something like:
<action name="on_hips" extends="standing" offsetOverride="0, 0">
<orients>SW, W, NW, N, NE, E, SE, S</orients>
<heights>160, 160, 160, 160, 160, 160, 160, 160</heights>
<widths>100, 100, 100, 100, 100, 100, 100, 100</widths>
<tileCounts>1, 1, 1, 1, 1, 1, 1, 1</tileCounts>
<offsetPos>0, 0</offsetPos>
<gapSize>0, 0</gapSize>
Where the 'extends="standing"' indicates that any component not
specifically defined for the "on_hips" action should fall back to using
the corresponding component in the "standing" action (with an overridden
offsetPos specified by 'offsetOverride').
* 10/2/2002
** DashO client munging
- Classes that can't be renamed
implements Streamable
extends GameConfig (due to MiCasa lobby) (caught by Streamable)
extends MessageBundle
implements ImageLoader
- Classes whose fields can't be renamed
extends DObject
- Classes whose methods can't be renamed
extends Controller (they look up handle<foo> methods by name)