Commit Graph

178 Commits

Author SHA1 Message Date
Michael Bayne 2b302cef07 Modified code that computes object tile bounds to account for new
overridable image origin.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@828 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-18 08:38:57 +00:00
Michael Bayne 4aef9a0d74 Removed commented out location painting code as it's now in its new home.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@827 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-18 08:38:33 +00:00
Michael Bayne 7d079a2bec Switch to new unified direction constants.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@818 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-17 03:34:04 +00:00
Michael Bayne 4f716cd540 Added a callback method that allows derived classes to paint things after
the base tiles have been painted, but before anything else. This allows us
to paint things that appear to be on the ground (like locations).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@802 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 08:31:17 +00:00
Walter Korman 9753d54608 Minor reformatting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@794 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 06:10:33 +00:00
Walter Korman 1e1b5e1d4a Rejiggered the iso scene rendering yet again to address objects in the
scene that may partition two items, and to address the lack of a proper
total ordering of dirty items in the non-partitioned comparison case.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@792 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 05:42:16 +00:00
Michael Bayne 37b9ff1d20 Added getScreenCoords(), invalidateRect().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@785 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-15 04:20:55 +00:00
Walter Korman b00fdc6ab5 Use String.valueOf(int) to convert int to string.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@782 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-14 23:31:04 +00:00
Michael Bayne 54b02ad1ff Not to freak out if we have no scene.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@760 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-12 19:53:11 +00:00
Michael Bayne f1b92df3d1 Disected and reassembled things so that a miso scene can be constructed
without a tile manager, which can be provided later, at which point all of
the tiles will be resolved. Also made it possible to replace the model in
a partially constructed scene. How's that for a turn of phrase: partially
constructed scene. Wheee!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@743 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-05 07:29:06 +00:00
Michael Bayne e3c84e212f Ok. Now we've *really* got the x,y vs. col,row business sorted out.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@715 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 23:35:59 +00:00
Michael Bayne 7ce8846420 If we're showing coordinates, also outline the tiles.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@714 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 23:35:37 +00:00
Michael Bayne d2dff11867 Fixed x,y vs. col,row thing once and for all. Also cleaned up object tile
footprint setting.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@711 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 23:08:28 +00:00
Michael Bayne e5c3967f9a Changed _scenemodel to _viewmodel.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@688 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 20:33:16 +00:00
Michael Bayne 455062779d Was populating the display scene from the model incorrectly.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@677 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 19:30:51 +00:00
Michael Bayne 2ad3f03a34 Changed MisoTile to BaseTile.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@654 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 22:17:42 +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 d35f2894c1 Phase one of the scene refactoring (which will set the stage for all
manner of happiness and joy).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@615 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-12 20:56:56 +00:00
Walter Korman 3ea91cdfdd More work on character components.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@579 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-30 16:16:01 +00:00
Walter Korman 933a427b68 Render scene tile layers inclusive of the fringe layer.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@578 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-27 01:37:37 +00:00
Michael Bayne b632510cb1 Javadoc edits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@576 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-26 01:40:22 +00:00
Walter Korman d102a47f13 Abstracted character-sprite-related activity to the cast package in
preparation for character component compositing and other
character-related antics.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@575 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-26 01:17:22 +00:00
Walter Korman 4b58a696ca Added the ability to specify one portal in a scene as the "default
entrance."  The default entrance is specially highlighted in the scene
and can be read from and written to XML scene description files.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@558 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 16:36:43 +00:00
Walter Korman 63a822862d Explicitly check to make sure two dirty items occupying the same tile
are sprites since that's what we're actually expecting.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@557 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 16:35:45 +00:00
Walter Korman c9535eca02 Simplified dirty item render sorting. General clean-up and comments.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@554 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 01:42:49 +00:00
Walter Korman 092d96509e We can't merge dirty rectangles for each dirty item when rendering
into a single rectangle, since doing so may cause new areas to be
dirtied that impact portions of other sprites or objects that won't
get properly redrawn.  Sigh.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@550 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-24 01:33:47 +00:00
Walter Korman c839b61548 More polishing work on scene rendering.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@543 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-24 00:55:08 +00:00
Walter Korman 64ed794d3d Removed unnecessary clipping.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@526 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-23 02:04:07 +00:00
Michael Bayne dc0df5bdf8 Javadoc updates.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@520 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 23:56:01 +00:00
Walter Korman c6a2a488d4 Don't allow diagonal steps that are impeded by an impassable tile.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@518 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 21:32:13 +00:00
Walter Korman c7d26cea8e Fixed scene rendering issues and improved performance.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@517 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:21:42 +00:00
Walter Korman ef97b42acd Revamped iso scene rendering yet again to remove unnecessary dirty
rectangle propagation and to only render the dirty portions of dirty
objects and sprites.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@509 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-19 23:26:31 +00:00
Walter Korman 69dd36f101 Created iso scene view model listener to handle modifications to the
scene view model more elegantly.  Updated editor and scene view panel
to make use of said listener.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@499 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-18 21:01:44 +00:00
Walter Korman bcae50aa08 Render the placing tile to facilitate proper tile placement. Fixed up
tile highlighting accordingly on tile deletion and location actions.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@495 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-18 20:25:46 +00:00
Walter Korman 511f2e13ee Fixed bug in checking whether two objects overlap horizontally.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@494 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-18 20:24:05 +00:00
Walter Korman bed0a2facb Invalidate objects, and any tiles, sprites or objects impacted by an
object's dirty rectangle, when invalidating dirty rectangles.
Commented out verbose logging.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@484 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-17 23:39:06 +00:00
Walter Korman 2ecd879692 More work on object placement, removal, and rendering within scenes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@479 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-17 22:21:22 +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 3773da79a6 More work on object tiles. Revamped isometric scene rendering to
gather dirty sprites and objects and render after base and fringe tile
layers.  Add shadow tiles in the footprint of objects to make them
impassable.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@460 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-13 01:08:59 +00:00
Walter Korman 6638380a4d More work on object tiles.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@448 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 00:42:08 +00:00
Walter Korman 915e13ca12 Make sure screen coordinates that are converted to tile and full
coordinates when editing a scene are valid before forging ahead with
scene modifications.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@436 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-11 16:21:09 +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 09ef3cd972 Decoupled MISO from Whirled. They now exist in a form that can be easily
combined in a game that wishes to use both of them, but MISO no longer
extends Whirled's Scene interfaces.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@400 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-05 23:58:36 +00:00
Michael Bayne e5849ab0b6 Added ability to set scene id and version to EditableScene.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@356 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 01:46:10 +00:00
Michael Bayne cdaea4bbab Waffle waffle. Changed MisoScene back to returning lists rather than
arrays for locations, portals and clusters.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@355 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 01:31:32 +00:00
Michael Bayne b567223419 Added an id member which will be used to track the location's unique
identifier. (We'll need to be able to look locations up by id.)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@354 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 01:25:26 +00:00
Michael Bayne b22ccb7b71 Return a List rather than an ArrayList.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@353 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 01:24:54 +00:00
Michael Bayne 2fb833fd5b Serious scene surgery.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@344 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-21 02:30:35 +00:00
Michael Bayne 7c96663f44 Minor scene changes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@342 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-21 00:21:40 +00:00