Commit Graph

69 Commits

Author SHA1 Message Date
Michael Bayne f1f4e9c59a Added hitTest() which determines whether or not a point touches a
non-transparent pixel in an object's image.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@901 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-01-31 02:08:52 +00:00
Walter Korman d6aa41396b Added ImageUtil.createImage() to create blank images that are compatible
with the destination screen device.  Updated existing code that previously
created buffered images directly to reference ImageUtil.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@870 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-01-18 17:48:11 +00:00
Michael Bayne c6e4b73851 Added comments to some code that needs to be fixed later.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@868 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-01-17 23:43:14 +00:00
Michael Bayne b9f77beded Construct resource manager according to new method.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@866 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-01-16 03:01:45 +00:00
Michael Bayne 861e8ffb98 Added support for explicitly specifying the offset into the object tile
image that should be centered at the origin when the tile is rendered.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@826 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-18 08:37:54 +00:00
Michael Bayne 940154d7e3 The image manager now falls back to loading images via the Toolkit if it
can't load the ImageIO classes. This unfortunately means that we're back
to passing a Component instance to the ImageManager at construct time.
Whee!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@749 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-07 01:33:29 +00:00
Michael Bayne 9a02d456e5 Obtain our images through the image manager. We may be back later to have
the image manager cache them as well.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@718 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-30 02:34:58 +00:00
Michael Bayne 0905d5c0ce Added ability to dump tiles in addition to tilesets.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@710 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 23:07:38 +00:00
Michael Bayne 70f6e9091d Was assigning object tile dimensions incorrectly.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@709 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 23:07:12 +00:00
Michael Bayne 8d30af6db4 Added bundle dumper.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@708 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 22:10:54 +00:00
Michael Bayne be165a5c12 Added toString().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@707 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 22:10:42 +00:00
Michael Bayne fef4803767 Extended the wrong class.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@706 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 22:10:28 +00:00
Michael Bayne 46b71392aa Moved some stuff into BundleUtil. Added code to support post-parsing
tileset validation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@700 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 21:58:15 +00:00
Michael Bayne be5428a2f7 Moved some bundle stuff into BundleUtil. Added methods to support
post-parsing tileset validation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@699 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 21:57:31 +00:00
Michael Bayne 4f6e0f7542 Documentation fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@693 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 20:39:37 +00:00
Michael Bayne 075ea5e9fe Created a persistent tileset name to id broker implementation; wrote an
ANT task for creating tileset bundles.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@659 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:14:11 +00:00
Michael Bayne b7312882f4 Added enumerateTileSetIds().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@658 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:13:42 +00:00
Michael Bayne 80072f7048 Added methods that take File instances in addition to those that take
String paths.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@657 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:13:20 +00:00
Michael Bayne 38a538a446 Implemented enumerateTileSetIds(); also added sanity check when scanning
the resource bundles at construct time.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@656 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:12:42 +00:00
Michael Bayne 73b952913a Removed some vestigal code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@652 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 22:06:39 +00:00
Michael Bayne 629e8cbf74 Added code to parse gapSize and offsetPos.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@651 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 22:06:19 +00:00
Michael Bayne c1d2c5ab10 Fixed tile count computation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@643 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 08:41:01 +00:00
Michael Bayne 36e3b8ff7f checkedGet() need not throw NoSuchTileException.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@642 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 08:40:34 +00:00
Michael Bayne 7ad2acca11 Bundles! Got all the tileset bundle stuff working and wrote some tests to
inrease my confidence in the use of the word "working".


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@635 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-21 02:42:16 +00:00
Michael Bayne 6c1051abed Repackaging now that I know what we want to do with the tools package.
Here's the policy:

Every top-level package has a tools package under which all subpackages
exist with their tools additions. For example:

com.threerings.media.tile.TileSet
com.threerings.media.tools.tile.XMLTileSetRuleSet
com.threerings.miso.scene.MisoScene
com.threerings.miso.tools.scene.EditableMisoScene


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@630 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-20 04:15:44 +00:00
Michael Bayne 233b7aca22 Modified TileSetBundle to load resources from a ResourceBundle instead of
a JarFile.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@629 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-20 03:48:41 +00:00
Michael Bayne 8ac5e7c9bb Created tileset repository that loads tiles from tileset bundles. It
obtains the bundles from the resource manager using the new resource set
facilities. Oh, it's all so resourceful.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@628 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-20 03:47:38 +00:00
Michael Bayne cc21ad8679 Javadoc fixes and cleanups.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@623 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-18 04:27:56 +00:00
Michael Bayne ae1052a371 Oh the vast sweeping changes, and they're not even close to complete, but
things compile and most things run so this is a good time to checkpoint.
Let me recall:

- Refactored the whole scene deal.
- Revamped the XML parser stuff (now uses Digester).
- Rethought the tile management.
- Started tile bundle stuff.
- Wrote some tests.
- Did a bit of Mike-ification.

Onward and moreward.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@621 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-18 04:09:23 +00:00
Michael Bayne 42eb80a104 Tile coordinate calculations were booched.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@611 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-08 06:58:57 +00:00
Michael Bayne feb2a2633e A bunch of intertwingled changes:
Refactored TileSet into TileSet, UniformTileSet, SwissArmyTileSet and
ObjectTileSet.

Removed dependence on the "root" system property from the
XMLSceneRepository (things either pass in full paths now or input streams
fetched via the resource manager).

Removed MisoUtil.createImageManager() because everyone does that by hand
now (which is good because some non-Miso things were using MisoUtil for
that).

I think that's it, but if there was something else, don't blame me. Blame
the monkeys.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@608 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-08 03:04:45 +00:00
Walter Korman 39966726aa More work on character components. Revamped tile sets to allow them
to be constructed and used directly.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@581 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-01 01:40:43 +00:00
Walter Korman 9b3af10abe Renamed getPoint() for posterity.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@512 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:11:59 +00:00
Walter Korman 97940360dc Removed image from toString().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@511 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:11:25 +00:00
Walter Korman 00d57dfb92 Added character manager and character descriptions. Allow tile sets
that have no specified layer.  Made the scene editor gracefully handle
the case where there are no valid tile sets for use with the selected
scene layer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@461 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-15 23:53:43 +00:00
Walter Korman 9fc38238a6 Tile sets that are specified as object tile sets now always produce
object tiles.  If no dimensions are specified for an object, it
defaults to 1x1 unit tile units.  The media package supports
specification of tilesets as object tile sets via the "layer"
attribute.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@450 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 16:36:58 +00:00
Walter Korman e8d41b9592 More work on object tiles. Simplified tile set manager as the editor
will now obtain tile set information directly from the tile sets.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@446 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 00:38:15 +00:00
Walter Korman ad7b64d4a1 Initial work on support for objects whose images span multiple tiles.
Made TileSet an interface.  Throw exceptions for unknown tile or tile
set requests.  General clean-up and documentation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@427 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-11 00:41:27 +00:00
Walter Korman 95ba5ef9cf Separate the notion of tile passability from tile objects since
passability is specific to the miso layer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@405 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-08 21:04:26 +00:00
Michael Bayne c69e46be21 Added getTileId() which returns the fully qualified tile id.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@352 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 01:24:27 +00:00
Walter Korman da1484a019 Don't attempt to put a tile in the tile cache if we didn't retrieve it
from the tileset manager successfully.  Cleaned up comments.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@350 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 00:44:31 +00:00
Walter Korman 56238e7820 Read tileset id and name from attributes of the tileset tag.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@347 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-27 18:43:08 +00:00
Michael Bayne ec1cf5c667 Changed IntMap to HashIntMap.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@339 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-17 05:18:21 +00:00
Walter Korman 6d5a41d834 Return a null tile if a non-existent tile id is requested.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@321 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-30 01:13:08 +00:00
Michael Bayne d89f7ed454 Moved TileSetManagerImpl into the media.tile package because it's useful
for any derived class implementing TileSetManager.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@274 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 23:17:46 +00:00
Michael Bayne 8376b6e9fa Extracted tile code from MISO and moved it into it's own package in media
because it's general purpose.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@273 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 23:14:21 +00:00
Walter Korman 722073eca6 Cleaned up XML parsing to store temporary info more cleanly. Initial
work on scene group parser.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@271 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-16 20:14:06 +00:00
Walter Korman 0616f0f464 Moved AmbulatorySprite around and made it implement the Traverser
interface.  Initial version of AStarPathUtil and hooked it in to
SceneView.getPath().  Not yet tested.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@255 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-15 02:30:28 +00:00
Walter Korman 18e6b0b95b Added passability to tile objects. Changed TileSetManager to retrieve
tiles in their entirety from their TileSet.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@231 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-13 19:54:39 +00:00
Walter Korman d54d562992 Updated comments.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@230 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-13 15:00:24 +00:00