Commit Graph

1024 Commits

Author SHA1 Message Date
Michael Bayne 7302924ea0 Can't ignore repaints, try not being decorated.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1024 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-19 01:27:34 +00:00
Michael Bayne b0364efa34 Only request a repaint in mouseMoved() when our hobject changes if we're
highlighting objects and the object's action status is in line with
whether or not we're only highlighting objects with actions. Also changed
some things to support the new, simpler, AnimatedView interface.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1023 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-19 01:26:17 +00:00
Michael Bayne e0e60c3fe3 Modifications to bring things up to speed with interface changes in the
animation base classes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1022 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-19 01:24:59 +00:00
Michael Bayne 63a32a6332 Modified rendering to use a hand managed volatile image as a back buffer
instead of using a buffer strategy. This will shortly be extended to
support more efficient scrolling as well.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1021 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-19 01:23:56 +00:00
Michael Bayne 8d56ec853a Documentation clarification.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1020 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-18 06:06:14 +00:00
Michael Bayne 06f9ac0c31 Disable scrolling when speed is set to zero mspp.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1019 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-18 06:05:59 +00:00
Michael Bayne f497a93541 Create the IsoSceneViewModel and no longer create the sprite manager.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1018 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-18 00:43:24 +00:00
Michael Bayne c97222993b Have the scene view panel create its own sprite manager and supply it with
a scene view model rather than a config object from which it would create
a model.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1017 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-18 00:40:58 +00:00
Michael Bayne 9faac13369 Added ability to construct a view model directly with the proper
parameters.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1016 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-18 00:37:55 +00:00
Michael Bayne 648c1c3c99 Need to use / not File.separator because apparently jar files always want
forward slashes. (Write once, run anywhere!)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1015 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-18 00:06:57 +00:00
Michael Bayne 718ca0de17 Test application for the scrolling isometric view.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1014 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 23:48:38 +00:00
Michael Bayne 7fa37c5837 No coordinates.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1013 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 23:48:27 +00:00
Michael Bayne 4b783c4482 Enhancements to support simple scrolling. A number of things don't work if
the view is scrolled, like object tiles, mouse coordinate computation and
pretty much anything other than rendering a scrolling background under
some sprites. Someday we'll probably want to sort out all that other
business, but not under current monthstone circumstances.

Note: the scrolling still feels a bit choppy (even under Windows) which is
annoying, but I'm doing everything by the book and have spent too much
time fine tuning it already, so we'll have to come back to this later if
we're not happy with the visuals.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1012 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 23:45:36 +00:00
Michael Bayne fbc39605e7 Enhancements to support scrolling.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1011 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 23:40:43 +00:00
Michael Bayne b1109c8370 The animated view is now passed its invalid rect count in
paintImmediately() so that it can figure out if it's being painted solely
to facilitate scrolling or because there are dirty regions.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1010 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 23:39:32 +00:00
Michael Bayne 7c5e5dbce9 Added support for animated views that scroll. The animation manager
attempts to tune its refresh interval to one that allows the animated view
to scroll in even pixel counts each time through the render loop.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1009 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 23:38:18 +00:00
Michael Bayne fdf15f0f52 Moved config toggle for showing object footprints into the scene view
model where it resides happily with existing toggles for showing
coordinates and sprite paths; did some other cosmetic cleanup.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1008 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 08:09:11 +00:00
Michael Bayne 42261772a5 Modified scene interface so that tiles are requested directly so that we
can implement "virtual" scenes which return tiles infinitely in all
directions in anticipation of supporting scrolling.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1007 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 08:01:15 +00:00
Michael Bayne 1bd4668067 Minor code cleanup; didn't turn out to be useful to have the object action
in the object metrics record.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1006 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 07:30:45 +00:00
Michael Bayne 070c12fbbe Automatically precalculate our precalculatables rather than having some
external entity instruct us to do so. We always want them and they're not
that expensive to calculate.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1005 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 07:17:08 +00:00
Michael Bayne 318b476632 Create tile bounding polygons on demand; changed object tile handling such
that a list of object metric records is used rather than a hashtable
mapping tile coords to object tile bounding polygons because we were never
doing a hash lookup, only iterating over the whole table.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1004 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 07:16:21 +00:00
Michael Bayne 8db0bce2a7 Removed warning message because this is a normal occurrence.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1003 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-17 07:13:59 +00:00
Michael Bayne b3619774c3 Use setStateImmediate() when ending the game so that other game manager
code doesn't have to do something like that itself to prevent code from
being inadvertently executed after the game has been ended.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1002 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-15 03:42:32 +00:00
Michael Bayne 88a4dc157a Fixed up the didShutdown() business which was happening twice; moved the
delegation into the base callback methods.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1001 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-14 18:08:53 +00:00
Michael Bayne 573939b483 Ignore request to start up an in-play game; moved code that starts a game
when all players have arrived in the game room into a method that can be
overridden.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1000 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-14 07:28:12 +00:00
Michael Bayne 2e9627d601 New test scene.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@999 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-14 01:13:35 +00:00
Michael Bayne c25f5ce570 Out with the old, in with the new.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@998 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-14 01:11:14 +00:00
Michael Bayne 131ab59ad9 Whoops, need a length one not zero array.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@997 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-14 00:00:45 +00:00
Michael Bayne 6448309b0e startGame() and endGame() need to be public to be accessible to the
delegates; added isGameOver() to standardize the way that the delegates
determine that the game is over (isGameOver() may need to be customized by
the games, so we want the delegates to use the game's custom code when
appropriate).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@996 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-13 18:50:15 +00:00
Michael Bayne a00e7e5214 Automatically create a SpriteManager unless otherwise instructed; added
methods for starting and stopping the animation manager associated with an
animated panel.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@995 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-13 18:48:56 +00:00
Michael Bayne a85a6f1394 Delegation! Since it's clear that extracting services into delegation
classes is only going to become more common, I've gone and created a
comprehensive facility for creating and using delegates in the place
controller and manager as well as the game controller and manager. With
the pattern nicely set, it is also easy to extend to controller/managers
further up the hierarchy that might need to delegate special methods of
their own. Whee!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@994 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-13 03:21:28 +00:00
Michael Bayne 8399c9a9cf Removed the code that was setting the clip as it wasn't actually doing
anything. The clip is already properly set before render() is called.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@993 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-12 08:54:49 +00:00
Michael Bayne 5fb9273941 Added code to deal with situations where the SceneViewPanel is smaller
than the IsoSceneView wants to be. Presently we simply center the scene
view, but we'll later be adding the ability to set a rectangle on which to
focus the scene view when shrunk so that the user can always see their own
character.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@992 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-12 08:53:59 +00:00
Michael Bayne ebc3fe229d Made getTurnHolderIndex() public.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@991 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-12 07:17:33 +00:00
Michael Bayne 671d7ddce1 Documentation fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@990 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-12 07:01:54 +00:00
Michael Bayne 7a8908111b Oh the humanity. Modified the turn game services to be a "mix-in" using
the bastard Java technique of delegates and interfaces. I feel like I'm
doing OOP with one hand tied behind my back.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@989 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-12 06:57:30 +00:00
Walter Korman 85797eed0d Renamed HeterogenousStreamableList to the only slightly less verbose but
easier to spell PolyStreamableList.  Use ListUtil and String arrays rather
than hashtables to track classname to class id mappings.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@988 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-12 01:54:51 +00:00
Walter Korman 7bb1b0f285 A Streamable list of Streamable objects, for those occasions where the
user has the need to store objects of varying types in a single list
(e.g., different sub-classes of a base class that is itself streamable)
that will itself be sent over the wire.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@987 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-11 22:43:18 +00:00
Michael Bayne bcca494fdd Commented out some debug logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@986 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-10 04:19:34 +00:00
Michael Bayne a4283fd756 Report the actual error when we can't look up a method.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@985 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-10 02:13:31 +00:00
Walter Korman 45f32c4622 Added resolveActionSequence() to provide a facility for letting the
character manager know that certain action sequences for a character
descriptor will be needed in the near future.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@984 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-10 00:05:36 +00:00
Walter Korman 2420c9a1a6 Actually reference the action cache when attempting to retrieve action
sequences.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@983 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 23:39:17 +00:00
Michael Bayne 635e9cf930 addObserver -> addClientObserver.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@982 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 20:47:11 +00:00
Michael Bayne 284e8ef6ed Made addObserver into addClientObserver because that's how we do it
everywhere else. Same thing for removeObserver.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@981 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 20:45:23 +00:00
Michael Bayne fca91d350b Added facilities for being notified when the parlor director receives a
game ready notification and for taking charge of the process of entering
the game room.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@980 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 11:23:49 +00:00
Michael Bayne 1bca84927f Added support for DObject transactions which are collections of events
that are dispatched over the network at once and processed all at once.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@979 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 07:50:37 +00:00
Michael Bayne a1162ae85a Whipped unit tests into shape. Added simple test for dobject transactions.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@978 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 07:50:04 +00:00
Michael Bayne c57ff60e69 Removed ability to run server in test mode. We don't need a whole server
when were unit testing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@977 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 07:49:41 +00:00
Michael Bayne 2c50369bd3 Comment reformatting; added xlate() which is like the get() variants
except that it extracts the translation string key and arguments from a
compound key which is a tab-separated list of strings.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@976 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 01:35:26 +00:00
Michael Bayne 4394ad7094 Was missing code for "short" fields.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@975 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 00:10:19 +00:00